Skip to content

Cross-repo plan — archived Current-Phase narrative

Append-only history. Nothing here drives current work. No skill reads this file — it is the consumed record moved out of plan.md on 2026-09-17. Each section below is verbatim, under a provenance note naming its original heading.

Phase 14 — Solidify is CLOSED (2026-09-10) on all six exit criteria — verdict Ready for next phase in mid-review-phase-14.md. The owner walked the five questions on prod on 2026-09-09, the nine finding clusters shipped as R2.1 (backbone v0.24.1 + UI v0.14.1, live 2026-09-10 06:16 UTC), and the re-walk of the affected steps came back green the same day. Both milestones closed at 0 open. The phase's central process finding — eight gates that reported success without doing their work — is recorded in the mid-review and carried as the prove-it-fails-for-gates rule.

Earlier phases, kept for the record:

Phase 10 — Walking Skeleton is CLOSED (2026-08-26) on all three of its exit criteria — the clean-clone walk scripts/smoke_e2e.py is green under sdk-smoke.yml on trunk 5c67b3d, the demo layer is gone (ADR-077), and prod runs the result (backbone v0.17.1 + UI v0.8.0). Evidence per criterion is in the phase doc. #954 (credential rotation) rides out of the phase as the phase-independent ops item it was scheduled as.

Two phases active (2026-08-27). Phase 11 — Showcase is complete: its backbone capability wave landed on 2026-08-26 (#1008 portfolio as exposure selector, #1009 matrix-batch list, #1010 portfolio list metrics), and its UI wave — 12 issues, ui#218–ui#229 — was split and landed on 2026-08-27, followed by the stack + spec work of ui#254 and the fixes the first real walk surfaced.

Exit criterion 1 is met. All 11 target: P11 steps in showcase-script.md execute against a compose stack on UI trunk 73413cf + backbone trunk 4bfd768: ci.yml green and e2e-smoke 25 passed / 0 failed / 2 skipped (run 33064354961). Neither remaining skip is a Phase 11 step — compare.spec.ts needs ≥2 saved scenarios, settings.spec.ts needs a non-English locale.

Walking these moments for the first time is what found all five defects the phase fixed, and only two were the phase's own. The severe one predated it: migration 0046 renamed the role admin → org_admin in June 2026 and the UI never followed, so every org_admin scored below viewer and the whole /admin console was unreachable by any user (ui#249). A backbone preflight bug meant a portfolio compute could never succeed on a stack where that hazard had been computed before (#1057/#1058), and a missing loading state let the moment-2 walk skip itself at random (ui#258). The two genuine Phase 11 regressions — a hardcoded ssp2-4.5/2050 forced onto first load, and a stale matrix selector — were fixed in ui#248/ui#252.

Its citizen wave 1 (UI "Phase 9b") is deployed in UI v0.8.0 and walked — Moment 1 steps 3 and 6 are live (#971); steps 4 and 5 are now walked too (ui#218–ui#220, smoke run 33064354961). Phase 13 — Event Replay opened beside it by owner instruction, promoted from the live-risk charter (exploration/07-live-risk.md §12): backbone waves first, UI wave data-driven. The two phases share no files beyond api/v1/compute.py's exposure selector, which Phase 13 consumes and does not edit. Phase 13's code landed 2026-08-31/09-02: backbone W0–W3 as PRs

1123–#1134 and #1143–#1145, UI W4 as ui#287–#295, released as backbone

v0.21.0 + UI v0.12.0 and deployed to prod 2026-09-02 06:41 UTC. All six UI issues and all fourteen backbone issues (#1018–#1031) are now closed — W2's #1028 and coordinator #1031 on 2026-09-02, W3's #1030 and the ops tracker #1146 on 2026-09-03. Exit criterion 1 is MET: sdk-smoke.yml run 33597653760 is green on fe05e17 with the event leg (event_loss=49450.5251 assets=3, grade screening). Criterion 3 is MET: every guardrail re-verified on trunk 7cc61db — _SCREENING_GRADE_PERILS byte-identical vs v0.20.0 (the diff adds only EVENT_LANE_GRADE_NOTE beside it), no non-ARIA "alert" in the UI's live namespace or components, the life-safety line pinned by a UI test, and perils.wildfire.status still "gap".

Both replays are live on prod since 2026-09-03, run through the public API against real LitPop Greece books: Samos–İzmir M7.0 2020-10-30 — book 9de7a920… (100 rows), event 2e3fd696…, snapshot 47564d9e… (unit g), event loss 585,548,574 USD; North Evia 3–10 Aug 2021 — book dbe2a065… (216 rows), event da01cb7a…, six daily snapshots (unit K), losses 926,127 / 21,451,558 / 15,095,527 / 13,491,984 / 5,470,912 / 15,714,748 USD, the 08-06 peak matching the fire's worst day. No ead/aai in any payload; snapshots stay hidden from GET /v1/hazards. Criterion 2 is MET: the owner walked Moment 2 steps 8–9 on both books in the browser on 2026-09-03 and the showcase markers flipped to live. Phase 13 is CLOSED 2026-09-03. Mid-review: mid-review-phase-13.md.

Phase 12 — Second Country + Second Engine is code-complete, with all 23 of its issues closed (#1035–#1055 across W0–W4, the #1083/#1084 follow-ups the coverage probe raised — including #1051 and

1053 on 2026-09-02 and #1048 on 2026-09-03), and both UI children — ui#255,

ui#256 — merged. Exit criteria 1, 3 and 4 are MET: criterion 3 by scripts/verify_engine_agreement.py exit 0 / 0.0000 % EAD divergence on prod plus the owner's /agreement walk (two engines, 0 % EAD/AAI badges, climada disabled for earthquake with the reason). Criterion 2 (Walk) is MET: Moment 1 walked cleanly on both country pins 2026-09-02 (D13 evidence in showcase-script.md); the Moment 2 walk on the Cyprus portfolio acd702b1… first scored 0 of 1 members, and both causes were diagnosed and remediated the same day — Cyprus had no baseline/0 surface at all, and the rollup scores a member only through its own res-8 H3 cell, with no parent-cell fallback, so a LitPop member could never be scored by a surface built over GHSL points. Two baseline surfaces later (3902 cells each) and re-membered with three GHSL rows, the book answers 3 / 3: headline 4 Moderate-low river flood at baseline, 3 at ssp2-4.5/2030, 4 at ssp5-8.5/2050, exposed value 16,769,833 USD. The owner's browser re-walk of that page on 2026-09-03 confirmed those numbers and the horizon toggle — Phase 12 is CLOSED 2026-09-03. Mid-review: mid-review-phase-12.md. The four cross-phase Deps: on Phase 13's

1018/#1022/#1026/#1029 were inverted during the build: three were

file-collision orderings only, and #1029's was a genuine design fork the owner resolved by letting #1045 define the CountryLeg abstraction for Phase 13 to compose with.