MetaMask / MetaMask/core

Audit implementation of all controllers against "Guidelines for Writing Controllers"

Open
#4,578 1 comment 0 reactions 0 assignees View on GitHub
team-wallet-framework type-research wf-ext-base-controller-v2-upgrades
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.