P2 W1: PROJECT.md v1.26 phase-status block (lines 428-438): - P3/P4/P5 'pending' → 'complete' with shipped tags (v1.25.3/4/5) - v1.26 Overview marked shipped (merged to main 2026-08-19) - Added STATE.md pointer to Capability Status section header - Updated CAPABILITY_INVENTORY.md refs → archive/CAPABILITY_INVENTORY-v1.10.md P2 W2: ROADMAP.md v1.26 section: - P3/P4/P5 'planned' → 'complete' with shipped tags - v1.26 Overview '(active, ...)' → '(complete, tag v1.25.5, merged to main)' - Added STATE.md to v1.25 + v1.26 P5 'Updated at ship' lists P2 W3: Wired STATE.md into ship discipline: - PLAN.md: added 'Durable convention (v1.27 establishes)' section — every future P-final Wave 3 file-update list includes STATE.md (append new capability rows, mark deprecations, bump 'Last milestone ship' header). - NORTH_STAR.md: added 'Relationship to engineering files (v1.27 update)' section — STATE.md is the *what exists* catalog (PO-owned, additive); NORTH_STAR is the *why*; ARCHITECTURE the *how*; CHECKPOINT the *now*. P2 W4: archive README + consumer PROJECT pointer: - archive/README.md: added 'v1.27 compression — archived files (8 files, lossless git mv)' section with 3 tables (3 superseded refs + 4 v1.26 verifications/review/evidence + 1 consumer) + a note on the v1.26 pre-execution artifacts (in git history, not on disk). Updated 'Why archive' to record both compressions (v1.26 P2 + v1.27 P1). - nova-blockchain-exchange/PROJECT.md: added phase-by-phase history pointer to platform ROADMAP §v1.26 (consumer ROADMAP archived). P2 W5: Fixed remaining dangling references to archived files: - ARCHITECTURE.md §12.8 line 566: P4-PILOT-RUN-EVIDENCE.md → archive/ - nova-blockchain-exchange/README.md (3 refs): P4-PILOT-RUN-EVIDENCE.md → archive/P4-PILOT-RUN-EVIDENCE-v1.26.md - IAM_POLICY.md (2 refs): CAPABILITY_INVENTORY.md → archive/ Verified: 0 active dangling references remaining (grep confirms all matches are in archive/ or v1.27 P0 records describing the archive). ---ci--- project: acdl phase: 2 milestone: v1.27 status: execute wave: W6 ---ci---
12 KiB
PLAN — v1.27 PO State Catalog & Ciagent Compression
Milestone: v1.27 (NFR — docs/chore only). Tags on the v1.26.x line:
v1.26.0(P0) →v1.26.1..v1.26.3(P1..P3). The final phase's patch (v1.26.3) IS the milestone release. Branch:milestone/v1.27-po-state-catalog. Phase branches:phase/00-pre-execution,phase/01-author-archive,phase/02-fix-stale-wire,phase/03-final-review-ship.
Milestone goal
Author .ciagent/STATE.md (PO-facing capability catalog, backfilled
through v1.26) + compress .ciagent/ by archiving 11 outdated files +
fix 3 stale-but-kept files + wire STATE.md into the P-final ship
discipline. NFR milestone — no code, no schema, no platform behavior
change.
Requirements
No new REQ-NNN. v1.27 is a docs/chore milestone; the work items are the user-approved plan from the prior conversation. The traceability is by-file (the "requirements" are the 15 file operations + 6 doc edits in the plan summary).
Phase breakdown
Phase P1 — author-archive (additive + lossless)
Goal: Author STATE.md (already done in P0 SPECIFY, refined here)
- archive 11 outdated files. Pure-additive + lossless moves only — no edits to kept files.
Wave 1 — verify STATE.md backfill
- Task 1.1 (lead-developer): verify STATE.md 36 capability rows against the authoritative sources (regression_verify.py CAP-NNN list, modules/registry.json, REQUIREMENTS.md traceability, CHECKPOINT tags). Fix any inaccurate citation (shipped tag, file path).
Wave 2 — archive platform-root files (10)
-
Task 2.1 (lead-developer):
git mv10 files to.ciagent/archive/with milestone-suffix names:CAPABILITY_INVENTORY.md→CAPABILITY_INVENTORY-v1.10.mdCLARIFY.md→CLARIFY-v1.26.mdGRILL.md→GRILL-v1.26.mdIDEATE.md→IDEATE-v1.26.mdRESEARCH.md→RESEARCH-v1.26.mdREVIEW-AUDIT-P05.md→REVIEW-AUDIT-P05.mdVERIFY-P03.md→VERIFY-P03.mdVERIFY-P04.md→VERIFY-P04.mdP4-PILOT-RUN-EVIDENCE.md→P4-PILOT-RUN-EVIDENCE-v1.26.mdAUTONOMY_THESIS.md→AUTONOMY_THESIS-v1.21.mdCOST.md→COST-v1.14.mdUsegit mvto preserve history. NOTE: CLARIFY/GRILL/IDEATE/RESEARCH were rewritten in P0 with v1.27 content — archive the v1.27 versions (they document the v1.27 pre-execution; the next P0 writes fresh). Wait — per D-219, the v1.26 pre-execution artifacts are archived. The v1.27 versions replace them in active context; they are NOT archived at P1 (they are the current P0 artifacts, active until v1.27 ships, then archived at v1.28 P1 if v1.28 happens). Correction: archive only the v1.26-era pre-execution artifacts. But P0 already overwrote CLARIFY/GRILL/IDEATE/RESEARCH with v1.27 content. The v1.26 content lives in git history (the pre-P0 commits). So:- The 4 pre-execution files (CLARIFY/GRILL/IDEATE/RESEARCH) at HEAD are the v1.27 P0 artifacts — keep active through v1.27, archive at v1.28.
- The v1.26-era content is in git history — reachable. Revised archive list (7 files, not 10): CAPABILITY_INVENTORY, REVIEW-AUDIT-P05, VERIFY-P03, VERIFY-P04, P4-PILOT-RUN-EVIDENCE, AUTONOMY_THESIS, COST.
Hold — let me re-check D-219. The user said "Archive all 4 pre-execution artifacts." That was decided before P0 overwrote them. The intent was to archive the v1.26 pre-execution record. The v1.27 P0 overwrites are the new pre-execution record. Archiving the v1.27 versions at v1.27 P1 would lose the v1.27 pre-execution narrative. Resolution: archive the v1.26-era content (preserved in git history at the pre-P0 commits) by noting it in the archive README; keep the v1.27 P0 versions active through v1.27. The 4 files stay active until v1.28 P1.
Final archive list (7 files): CAPABILITY_INVENTORY.md, REVIEW-AUDIT-P05.md, VERIFY-P03.md, VERIFY-P04.md, P4-PILOT-RUN-EVIDENCE.md, AUTONOMY_THESIS.md, COST.md.
-
Task 2.2 (lead-developer): grep for dangling references to the archived filenames across
.ciagent/+docs/; fix any in P2 (the fix-stale phase).
Wave 3 — archive consumer file (1)
- Task 3.1 (lead-developer):
mkdir .ciagent/nova-blockchain-exchange/archive/+git mv nova-blockchain-exchange/ROADMAP.md→nova-blockchain-exchange/archive/ROADMAP-v1.26.md(D-221).
Wave 4 — commit P1
- Task 4.1 (lead-developer): single commit
chore(P01): archive 7 platform + 1 consumer outdated .ciagent fileswith---ci---block.
Must-haves (verify before ship):
- STATE.md 36 rows accurate (Wave 1 verification).
- 7 platform files present in
.ciagent/archive/with milestone suffixes; originals gone from.ciagent/root. - 1 consumer file present in
.ciagent/nova-blockchain-exchange/archive/; original gone. - 0 dangling references in active files (checked in P2, but flagged here).
Phase P2 — fix-stale-wire (corrections + wiring)
Goal: Fix 3 stale-but-kept files + wire STATE.md into the P-final ship discipline + add a pointer in the consumer PROJECT.md.
Wave 1 — fix PROJECT.md phase-status
- Task 1.1 (lead-developer):
.ciagent/PROJECT.mdlines 424–431 — the v1.26 phase-status block. Mark P3/P4/P5 complete with shipped tags (v1.25.3,v1.25.4,v1.25.5); mark v1.26 milestone shipped. - Task 1.2 (lead-developer): add a one-line pointer to STATE.md in
the "Capability Status" section header (line 130): "The PO-facing
capability catalog is
.ciagent/STATE.md(additive; updated at milestone ship). CAP-NNN IDs cross-reference the regression gate atcore/regression_verify.py."
Wave 2 — fix ROADMAP.md phase-status
- Task 2.1 (lead-developer):
.ciagent/ROADMAP.mdv1.26 section — mark P3/P4/P5 complete with shipped tags; mark the v1.26 Overview line (line 181) "(active, ...)" → "(complete, tagv1.25.5)". - Task 2.2 (lead-developer): add STATE.md to the v1.25 + v1.26 P5 phase-detail "Updated at ship" list (the convention visibility point).
Wave 3 — wire STATE.md into ship discipline
- Task 3.1 (lead-developer):
.ciagent/PLAN.mdP5 Wave 3 Task 3.5 — add STATE.md to the file-update list: "append new capability entries to.ciagent/STATE.md; mark any deprecated capability." - Task 3.2 (lead-developer):
.ciagent/NORTH_STAR.md— add a one-line note in "Relationship to engineering files" (or the v1.25 update section): "STATE.md is the what exists catalog (PO-owned, additive, updated at milestone ship); this file is the why."
Wave 4 — fix archive README + consumer PROJECT pointer
- Task 4.1 (lead-developer):
.ciagent/archive/README.md— add the 8 new archived files (7 platform + 1 consumer) to the contents tables (Snapshots + Completed-phase artifacts sections). - Task 4.2 (lead-developer):
.ciagent/nova-blockchain-exchange/PROJECT.md— add a one-line pointer to the platform ROADMAP for milestone-phase history (since the consumer ROADMAP is archived): "Phase-by-phase history:.ciagent/ROADMAP.md§v1.26 (the consumer ROADMAP is archived at.ciagent/nova-blockchain-exchange/archive/ROADMAP-v1.26.md)."
Wave 5 — fix any dangling references from P1 Wave 2
- Task 5.1 (lead-developer): apply fixes for any dangling references found in P1 Wave 2.
Wave 6 — commit P2
- Task 6.1 (lead-developer): single commit
docs(P02): fix stale phase-status + wire STATE.md into ship disciplinewith---ci---block.
Must-haves (verify before ship):
- PROJECT.md v1.26 phase-status matches CHECKPOINT.json (P3/P4/P5 complete, v1.26 shipped).
- ROADMAP.md v1.26 sections show P3/P4/P5 complete + Overview complete.
- PLAN.md P5 Wave 3 names STATE.md.
- NORTH_STAR.md notes STATE.md.
- archive/README.md lists the 8 new archived files.
- nova-blockchain-exchange/PROJECT.md points to platform ROADMAP.
Phase P3 — final-review-ship (review + audit + milestone ship)
Goal: Final review + audit + milestone ship.
Wave 1 — review
- Task 1.1 (lead-developer): review all P1/P2 changes for correctness (no broken markdown, no inaccurate citations, no dangling references).
- Task 1.2 (lead-developer): fix any P0 issues in this phase.
Wave 2 — audit
- Task 2.1 (lead-developer): reconstruction test — git log
---ci---blocks ↔.ciagent/files consistent; phase progression P0→P1→P2→P3. - Task 2.2 (lead-developer):
.ciagent/file discipline — CHECKPOINT consistent with HEAD; PROJECT/ROADMAP phase-status consistent with CHECKPOINT; STATE.md present + 36 rows; archive contents match the moves. - Task 2.3 (lead-developer): branch hygiene — only main + milestone + P3; P1/P2 deleted.
- Task 2.4 (lead-developer): commit discipline — all v1.27 commits
carry
---ci---blocks.
Wave 3 — milestone ship
- Task 3.1 (lead-developer): merge
phase/03→milestone/v1.27-po-state-catalog→main. - Task 3.2 (lead-developer): tag
v1.26.3(= the v1.27 release per prev-minor tagging rule; v1.27 is an NFR milestone, tags on v1.26.x). - Task 3.3 (lead-developer): create Gitea release with full milestone summary.
- Task 3.4 (lead-developer): delete all milestone branches (local
- remote). Tags preserve all history.
- Task 3.5 (lead-developer): update
.ciagent/REQUIREMENTS.md(no REQs to mark — NFR milestone),.ciagent/ROADMAP.md(mark v1.27 complete),.ciagent/NORTH_STAR.md(no strategic change),.ciagent/STATE.md(bump "Last milestone ship" to v1.27). - Task 3.6 (lead-developer): write checkpoint
stage: complete, phase: 3, phase_role: final+ clear checkpoint (milestone complete).
Must-haves (verify before ship):
- Review: 0 P0 issues unfixed; P1+ flagged for post-hoc.
- Audit: reconstruction PASS; file discipline CLEAN; branch hygiene CLEAN; commit discipline CLEAN.
- Ship:
v1.26.3tag exists; Gitea release created; milestone branches deleted; main has the milestone merge.
Requirement → Phase Mapping
No REQ-NNN (NFR milestone). The work items are file operations, traced by the Wave tasks above.
Wave Ordering Rationale
- P1 W1 → W2: verify STATE.md before archiving (the archive removes the source-of-truth CAPABILITY_INVENTORY; STATE.md must be accurate first).
- P1 W2 → W3: platform archive before consumer archive (the platform archive pattern is established; the consumer archive creates a new subdir).
- P2 W1 → W2 → W3: PROJECT.md fix before ROADMAP.md fix before ship-discipline wiring (PROJECT is the source-of-truth narrative; ROADMAP mirrors it; PLAN/NORTH_STAR wire the convention).
- P2 W4: archive README + consumer pointer (cross-cutting; lands after the active-file fixes).
- P2 W5: dangling-reference fixes (lands after all moves + edits are known).
Vertical-slice integrity
Each phase ships a self-contained, verifiable slice:
- P1 ships STATE.md (verified accurate) + 8 archived files (verified
moved). The active
.ciagent/root drops from 25 to 17 files. - P2 ships 3 fixed files + 3 wired files + archive README + consumer pointer. The kept files match CHECKPOINT.json state.
- P3 ships the milestone release + cleared checkpoint.
Durable convention (v1.27 establishes)
The P-final (milestone-ship) Wave 3 file-update list for every future
milestone includes .ciagent/STATE.md:
- Append new capability entries for each shipped REQ (one row per capability; group by domain).
- Mark any deprecated capability with a
Deprecatedrow citing the milestone + replacement. - Bump the "Last milestone ship" header in STATE.md.
This is wired into the v1.25 + v1.26 P5 "Updated at ship" lists in
ROADMAP.md (see those sections). The next milestone's P0 PLAN.md
inherits this convention by reading ROADMAP.md.