state-hub/workplans
tegwick 8b207a991a
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Build and Publish Multi-Context Image / build-and-push (push) Successful in 26s
feat(tasks): give task rows a canonical record identifier
Every work-record type carried a stable identifier except tasks, whose rows held
only id, workplan_id, title, status and priority — nothing connecting a row to
CUST-WP-0067-T01 in the file it came from. Matching was therefore by title, so a
renamed heading looked like one task vanishing and another appearing, and the
forge-derived reset had to refuse to touch tasks at all.

Adds tasks.record_id (nullable: no migration can invent an identity for an
existing row) and a backfill that reads the pairing from the repository files,
where a task declares both its canonical id and its projection UUID. 5516 pairs
across 121 repositories with zero conflicts; 4456 of 6073 cache task rows
identified.

Diff and reset now key on record_id where present, falling back to a
title-prefixed key so an unidentified row stays visibly unidentified.

Unknown stays unknown: a row the files do not claim keeps no identity and the
reset keeps refusing to act on it, and an existing identity is never
overwritten — a mismatch is recorded as a conflict rather than resolved.

Refs STATE-WP-0083-T06

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2583210@bnt-lap001
Assistant-Session: f2bff2d5-e9b2-4338-92ca-10282a927006
2026-08-26 02:05:51 +02:00
..
archived chore: archive finished STATE-WP-0070 (workplan terminology phase-2 retirement) 2026-07-14 00:27:57 +02:00
ADHOC-2026-06-04.md feat: add workplan aliases and legacy meter 2026-06-04 08:25:31 +02:00
ADHOC-2026-07-01.md chore: add local consistency sync cli 2026-07-02 00:15:16 +02:00
ADHOC-2026-08-08.md Prepare State Hub retirement baseline 2026-08-09 16:19:53 +02:00
ADHOC-2026-08-23.md chore(registrar): assign State Hub identifiers 2026-08-23 14:49:49 +02:00
CUST-WP-0003-whi-kpi-card.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
CUST-WP-0012-multi-user-onboarding.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
CUST-WP-0038-state-hub-threephoenix-ha.md Align State Hub migration with ThreePhoenix 2026-08-08 22:44:10 +02:00
CUST-WP-0042-workplan-state-model-cleanup.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0043-dashboard-ui-experience.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0044-recently-on-scope-digest.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0045-token-measurement-accuracy.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0046-workplan-id-normalization.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0047-lifecycle-assertions-and-renormalization.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0048-ui-state-change-reconciliation.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0049-workplan-execution-queue.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0050-railiance-fabric-graph-read-model-ingest.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0051-financial-fabric-read-model-adaptation.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0052-task-state-canon-adaptation.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0053-wsjf-triage-review-page.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0054-workplan-terminology-transition-legacy-meter.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0055-statehub-register-cli.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0056-dashboard-loading-robustness.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0057-overview-workstream-stage-counts.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0058-agent-skill-hub-interaction.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0059-mcp-write-layer-reliability.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0060-fix-consistency-cross-flavor.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0062-service-catalog-two-dimensions.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0063-weekend-automation-repair.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0064-statehub-consistency-sync-railiance01.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0065-repo-anchored-classification-spine.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0066-state-summary-revision-cache.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
STATE-WP-0067-attached-repo-agent-normalization.md Close STATE-WP-0067 attached-repo agent normalization workplan 2026-06-22 23:26:48 +02:00
STATE-WP-0068-offline-write-buffer-and-edge-relay.md feat(statehub): add offline write buffer relay 2026-06-25 13:44:27 +02:00
STATE-WP-0071-railiance01-workstream-caller-deploy.md fix(workplan): point workplan at its authoritative projection id 2026-08-25 17:37:52 +02:00
STATE-WP-0072-workstream-caller-remediation.md fix(workplans): adopt ADR-007 derived identifiers for unregistered records 2026-08-25 20:22:27 +02:00
STATE-WP-0073-legacy-meter-decline-and-remote-audit.md feat(api): retire phase-1/2 /workstreams REST aliases with 410 stranglers 2026-07-10 13:31:57 +02:00
STATE-WP-0074-hub-ecosystem-boundary-alignment.md fix(workplans): adopt ADR-007 derived identifiers for unregistered records 2026-08-25 20:22:27 +02:00
STATE-WP-0075-workstream-route-410-stranglers.md fix(workplans): adopt ADR-007 derived identifiers for unregistered records 2026-08-25 20:22:27 +02:00
STATE-WP-0076-definition-of-ready-and-comprehension.md fix(workplans): adopt ADR-007 derived identifiers for unregistered records 2026-08-25 20:22:27 +02:00
STATE-WP-0077-dox-assessment-recording-and-soft-visibility.md fix(workplans): adopt ADR-007 derived identifiers for unregistered records 2026-08-25 20:22:27 +02:00
STATE-WP-0078-ops-run-read-projection.md fix(workplans): adopt ADR-007 derived identifiers for unregistered records 2026-08-25 20:22:27 +02:00
STATE-WP-0079-retirement-strangler.md fix(workplans): adopt ADR-007 derived identifiers for unregistered records 2026-08-25 20:22:27 +02:00
STATE-WP-0080-register-project-flavor-awareness.md docs(workplan): record STATE-WP-0080's projection state after closing on central 2026-08-25 16:25:34 +02:00
STATE-WP-0081-cluster-self-sufficiency-and-registrar.md fix(workplans): adopt ADR-007 derived identifiers for unregistered records 2026-08-25 20:22:27 +02:00
STATE-WP-0082-multi-owner-review-contracts-and-receipts.md docs(review): record final full-suite pass 2026-08-22 21:08:20 +02:00
STATE-WP-0083-forge-derived-projection-reset.md feat(tasks): give task rows a canonical record identifier 2026-08-26 02:05:51 +02:00