Route a change through its owners¶
Identify the behavior and owner¶
Use the codebase orientation to trace the visible behavior. Do not begin at the first matching string if a contract, registry, shared model, or resident table owns the meaning.
Follow the matching route¶
| Requested change | Developer documentation | Agent-specific completion rule |
|---|---|---|
| Wire message, field, command, or limit | Change the contract | Update the contract first; name both receiving directions and deliberate asymmetry |
| Host or Workshop module | Add a module | Update live registries, manifest, public module page, media slots, and inventory gate together |
| Host model or UI | Host architecture | Keep business behavior in the owning model and native-control work in adapters |
| PowerPC guest behavior | PowerPC architecture | Preserve console/wire parity and pump the wire through nested Toolbox loops |
| Resident plane or shared layout | Resident components | Change the shared header once, run native guards, and satisfy or explicitly defer the exact-source bake before checkpointing |
| Public docs or availability | Documentation and gates | Keep user, developer, and coding-agent audiences distinct; rederive every moved source |
Verify proportionally¶
Run the smallest owning test while iterating, then the documented subsystem
gate. Run scripts/test-all when the change crosses subsystems or is being
prepared to land. If a required toolchain or machine is unavailable, report
the skip as an unverified surface rather than converting it into success.