Skip to content

Conversation

a-breslin
Copy link

Explanation

  • What is the current state of things and why does it need to change?
    Product Managers for MetaMask Swaps frequently need to understand the codebase's architecture, specific logic implementations, API calls, feature flag usage, caching mechanisms, RPC methods, and client-specific behaviors. This information is currently scattered across various code files, making it difficult and time-consuming for PMs to find and interpret.

  • What is the solution your changes offer and how does it work?
    This PR introduces a new Markdown document, docs/swaps-bridge-pm-guide.md, which centralizes and explains the Swaps and Bridge architecture in a PM-friendly, easily searchable format. It includes a table of contents, direct links to key code files, and an FAQ section, covering topics like core logic location, API interactions, feature flag implementation, caching strategies, RPC usage, Snap integrations, and Mobile vs. Extension differences.

  • Are there any changes whose purpose might not obvious to those unfamiliar with the domain?
    The primary purpose is to provide a single, accessible source of truth for non-technical stakeholders to quickly understand the Swaps/Bridge codebase.

References

Checklist

  • I've updated the test suite for new or updated code as appropriate
  • I've updated documentation (JSDoc, Markdown, etc.) for new or updated code as appropriate
  • I've communicated my changes to consumers by updating changelogs for packages I've changed, highlighting breaking changes as necessary
  • I've prepared draft pull requests for clients and consumer packages to resolve any breaking changes

Open in Cursor Open in Web

Copy link

cursor bot commented Sep 28, 2025

Cursor Agent can help with this pull request. Just @cursor in comments and I'll start working on changes in this branch.
Learn more about Cursor Agents

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants