Audit implementation of all controllers against "Guidelines for Writing Controllers"
- Dominant language
- TypeScript
- Stars
- 413
- Forks
- 308
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 253
Description
## Motivation
Some of our controllers currently do not fulfill their intended specifications correctly, which may affect downstream clients where the controllers are used.
To understand the extent of the problem and its impact, we should perform an audit on all controllers, evaluating whether their implementation of the `BaseController` API is both complete and correct, and documenting any points for improvement. Tickets should be created for any fix suggestions and communicated to the appropriate codeowners.
We now have [documentation](https://github.com/MetaMask/core/blob/add-controller-guidelines/docs/writing-controllers.md) that we can reference as a source of truth during this process.
## Acceptance Criteria
- Tickets are created for auditing each controller.
- All controllers are audited and reports left in the corresponding tickets (a simple "all-clear" should do if no problems are found).
- Tickets are created for fixing all issues documented in the reports, and these are assigned to the appropriate codeowners.
## References
- See https://github.com/MetaMask/core/issues/4579 for a similar effort with more limited scope.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading docs/writing-controllers.md, the referenced source of truth, and issue #4579 for the similar effort. Inventory the repository's controllers and evaluate each against the BaseController API, creating an audit ticket and report for every controller. Done means all controllers have been audited, fixes have tickets assigned to codeowners, and unaffected controllers have an all-clear report.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- api, backend
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 20/100