Task: Write the component clean standard and the per-component stories
Table of Contents
This page documents a task in the Bring every component to the component clean standard story. It captures the goal, current status, acceptance, and any notes or results.
1. Goal
The sprint 26 codegen pass has one written standard and one ordered story per component, so that the work can be done, and automated, the same way for every component.
2. Status
| Field | Value |
|---|---|
| State | DONE |
| Parent story | Bring every component to the component clean standard |
| Now | Nothing. |
| Waiting on | Nothing. |
| Next | Nothing. |
| Last touched | 2026-09-23 |
3. Acceptance
- The Component Clean Standard lists every step the ores.iam and ores.refdata work took, with the check that proves each one.
- Every C++ component has a story in sprint 26, in dependency order, with its survey snapshot and known issues.
4. Plan
(Implementation strategy. Written when work starts; key decisions
are distilled into the parent story's * Decisions at close, but the
plan itself stays — it is the historical record of what we did.)
5. Notes
6. Test Scenarios
Manual QA scenarios (scaffolded via compass add test_scenario)
that verify this task. Link
new ones here as they're created; the scenario doc itself links back
via its "Verifies task" field.
| Scenario | State | Notes |
|---|---|---|
7. PRs
| PR | Title |
|---|---|
8. Review
| Comment summary | File | Decision | Notes |
|---|---|---|---|
9. Result
The Component Clean Standard has 42 items in eight sections: baseline and inventory, models, protocol, generation, wiring and data, shell, structure and hygiene, and verification. They come from:
- the acceptance and results of the sprint 25 tasks "Adopt the canonical protocol in ores.iam", "Adopt the canonical protocol in ores.refdata", "Verify every IAM surface against the specification", and the protocol coverage tasks (IAM and refdata coverage, declared messages, seeded handler permissions, atomic junction batch save, junction write suppression);
- the commits of PRs #2104, #2110, #2112 to #2115, #2118, #2120, #2124 and #2126;
- the compass-codegen-fix-drift method, the registry definition in
component_registry.py, and the check scripts underprojects/ores.codegen/scripts/.
TypeScript items are left out, because the TypeScript UI is retired.
The survey found that only ores.iam is in COMPONENTS_UNDER_TEST.
ores.refdata was removed from it by a branch, and ores.dq and
ores.trading were bound in sprint 25 but not regenerated since the
generated marker landed, so almost none of their files carry it.
35 component stories are scaffolded in four tiers (11 foundation infrastructure, 11 higher infrastructure, 10 domain, 3 clients and test support). Tier 1 is in strict dependency order; above it the components link each other in cycles, so the order there is the best the links allow, each with one task whose plan follows the standard's sections. Each story carries its survey snapshot and the known issues for that component.