Template to copy
Replace the title with a clear, action-oriented name (e.g., “Adding a Toolbar Button”, “Registering JS Actors”).
Overview
Provide a brief 1-2 sentence description of what this operation accomplishes and when developers might need to do it.
Prerequisites
List what the developer needs before starting:
Build system set up and working
Relevant component knowledge or documentation to review
Any specific tools or extensions needed
Steps
Break down the operation into clear, sequential steps. Each step should have an action-oriented title.
1. [First Action Step Title]
Describe what needs to be done in this step and why it’s necessary.
Files to modify:
path/to/file1.cpppath/to/file2.js
Code pattern:
// Provide a concrete example of the code to add or modify
// Include enough context to show where it should go
// Use comments to explain non-obvious parts
Explanation:
Briefly explain what this code does and how it fits into the larger system.
2. [Second Action Step Title]
Continue with additional steps…
Files to modify:
path/to/another/file.jsm
Code pattern:
// More example code
Verification
Explain how to verify that the operation was successful:
./mach build && ./mach run
# or specific test commands
./mach test path/to/relevant/tests/
Describe what to look for to confirm success (e.g., “The button should appear in the toolbar”, “Check the Browser Console for the expected log message”).
Common Pitfalls
List common mistakes and their solutions:
Issue X: Brief description of the problem
Solution: How to fix or avoid it
Issue Y: Another common problem
Solution: The fix
See Also
Provide links to related documentation and examples:
Example implementation: Bug XXXXXX
Relevant source code:
path/to/relevant/code.cpp