plan: T2 re-ruled on review — steering out of Fingerprint and shapeMismatch (repo contracts govern; plan premise was wrong)
1 file changed,
+9
−2
docs/superpowers/plans/2026-08-23-multi-region-steering.md+9 −2
diff --git a/docs/superpowers/plans/2026-08-23-multi-region-steering.md b/docs/superpowers/plans/2026-08-23-multi-region-steering.md| index 5a292f43f..7390757f7 100644 |
| --- a/docs/superpowers/plans/2026-08-23-multi-region-steering.md |
| +++ b/docs/superpowers/plans/2026-08-23-multi-region-steering.md |
| @@ -39,8 +39,15 @@ zones are Route53 — dated spec note in Task 8). |
| - **Registry column rule**: adding `steering` touches FOUR places |
| (ALTER list, routeCols, scanRoute, Upsert) — currently 35 columns, |
| becomes 36; `TestUpsertRoundTripsAllColumns` catches a miscount. |
| - `Fingerprint` and `SnapshotFingerprint` gain it automatically via |
| - routeCols — pin with a test, don't assume. |
| + **AMENDED (controller, 2026-08-23, on Task 2's review):** only |
| + `SnapshotFingerprint` rides routeCols — pin it. `Fingerprint` is a |
| + hand-curated reload-relevance set with NO steering consumer on the |
| + edge (the converger is a host duty reading the registry directly): |
| + steering stays OUT of `Fingerprint`, recorded as a deliberate |
| + exclusion in the unit-column idiom. Likewise `shapeMismatch` does NOT |
| + compare steering — it is a record-owned column (Channel/Environment |
| + precedent); comparing it can permanently refuse adoption for the |
| + exact case adoption exists for. |
| - **Wire-shape changes are additive**: `steering` and the edges-file |
| `region` field are omitempty; records written before this plan parse |
| unchanged (round-trip test on a pre-plan fixture). |