From ea6fb0e92a25825b42e00b2f85aa23cf50605294 Mon Sep 17 00:00:00 2001 From: tegwick Date: Fri, 28 Aug 2026 00:28:19 +0200 Subject: [PATCH] fix(workplans): qualify ad-hoc identifiers with the repository prefix `ADHOC-YYYY-MM-DD` is unique per date but not per repository, so any two repos opening an ad-hoc on the same day collide. The 2026-08-26 fleet projection reset refused 9 records for exactly this reason. Canon (work-record-types_v0.1, CUST-WP-0066) settled the form as `{PREFIX}-WP-ADHOC-YYYY-MM-DD`, filename unchanged, and grandfathered existing ids on the condition they are never *silently* re-derived. This is the explicit migration that clause allows for. The hub id is derived from the record id, so a changed id is a different record: stale state_hub_*_id fields are dropped and fix-consistency re-derives. Co-Authored-By: Claude Opus 5 Assistant: claude-code Assistant-Model: opus Assistant-Process: 2583210@bnt-lap001 Assistant-Session: f2bff2d5-e9b2-4338-92ca-10282a927006 --- workplans/ADHOC-2026-06-01.md | 14 +++++--------- workplans/ADHOC-2026-08-20.md | 8 +++----- 2 files changed, 8 insertions(+), 14 deletions(-) diff --git a/workplans/ADHOC-2026-06-01.md b/workplans/ADHOC-2026-06-01.md index 70cf6fc..60b209a 100644 --- a/workplans/ADHOC-2026-06-01.md +++ b/workplans/ADHOC-2026-06-01.md @@ -1,5 +1,5 @@ --- -id: ADHOC-2026-06-01 +id: ACTIVITY-WP-ADHOC-2026-06-01 type: workplan title: "Ad hoc — activity-core opportunistic fixes 2026-06-01" domain: custodian @@ -9,10 +9,9 @@ owner: custodian topic_slug: custodian created: "2026-06-01" updated: "2026-06-03" -state_hub_workstream_id: "36162ff0-9b47-47c4-8602-56767f9b7a1c" --- -# ADHOC-2026-06-01 — activity-core opportunistic fixes +# ACTIVITY-WP-ADHOC-2026-06-01 — activity-core opportunistic fixes Captured during the CUST-WP-0045 T06 cutover prep session. The dev worker was brought up and surfaced an unrelated, pre-existing bug in the state-hub @@ -23,10 +22,9 @@ context resolver that is independent of the daily triage canary. ### T01 - Fix repo_sbom_status resolver route and params ```task -id: ADHOC-2026-06-01-T01 +id: ACTIVITY-WP-ADHOC-2026-06-01-T01 status: done priority: low -state_hub_task_id: "87b56da9-e692-4350-9aff-47080414ec06" ``` `src/activity_core/context_resolvers/state_hub.py` resolves @@ -111,10 +109,9 @@ worst-repo fields to the top of `context.repos`). ### T02 - Rule action context interpolation and per-iteration binding ```task -id: ADHOC-2026-06-01-T02 +id: ACTIVITY-WP-ADHOC-2026-06-01-T02 status: done priority: low -state_hub_task_id: "6b3a185e-cbea-454c-82fb-8b4c16cefef0" ``` Discovered while completing T01: `RunActivityWorkflow` builds each @@ -197,10 +194,9 @@ Tests: `PYTHONPATH=src .venv/bin/python -m pytest -q` -> 125 passed, 1 skipped. ### T03 - Make activity-core's Temporal activity timeout env-configurable ```task -id: ADHOC-2026-06-01-T03 +id: ACTIVITY-WP-ADHOC-2026-06-01-T03 status: done priority: low -state_hub_task_id: "bc9c9edb-e20b-4ff9-a15d-6e3e81f9b5e1" ``` Discovered during the CUST-WP-0045 T06 canary on 2026-06-01. The daily diff --git a/workplans/ADHOC-2026-08-20.md b/workplans/ADHOC-2026-08-20.md index 1c7d9d0..14ab08a 100644 --- a/workplans/ADHOC-2026-08-20.md +++ b/workplans/ADHOC-2026-08-20.md @@ -1,5 +1,5 @@ --- -id: ADHOC-2026-08-20 +id: ACTIVITY-WP-ADHOC-2026-08-20 type: workplan title: "Ad hoc — activity-core opportunistic fixes 2026-08-20" domain: infotech @@ -9,18 +9,16 @@ owner: codex topic_slug: activity-core created: "2026-08-20" updated: "2026-08-20" -state_hub_workstream_id: "0f803d0d-cfba-5139-a476-3d0e54256daa" --- -# ADHOC-2026-08-20 — activity-core opportunistic fixes +# ACTIVITY-WP-ADHOC-2026-08-20 — activity-core opportunistic fixes ## Reconcile the daily TODO review sink warning ```task -id: ADHOC-2026-08-20-T01 +id: ACTIVITY-WP-ADHOC-2026-08-20-T01 status: done priority: low -state_hub_task_id: "570d53c0-055b-54bb-ae07-17a3230f6bd1" ``` The projected `daily-todo-md-stale-review` definition still said that