From 00560945f81ba6ff1f5cacd9fe99c7fe756cc4b1 Mon Sep 17 00:00:00 2001 From: tegwick Date: Fri, 28 Aug 2026 00:28:23 +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-02.md | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/workplans/ADHOC-2026-06-02.md b/workplans/ADHOC-2026-06-02.md index 50b2918..45f1abe 100644 --- a/workplans/ADHOC-2026-06-02.md +++ b/workplans/ADHOC-2026-06-02.md @@ -1,5 +1,5 @@ --- -id: ADHOC-2026-06-02 +id: LLM-WP-ADHOC-2026-06-02 type: workplan title: "Ad hoc — llm-connect lessons from CUST-WP-0045 canary" domain: custodian @@ -9,10 +9,9 @@ owner: custodian topic_slug: custodian created: "2026-06-02" updated: "2026-06-03" -state_hub_workstream_id: "1c936c91-79c7-427d-ab37-9052e8a61cda" --- -# ADHOC-2026-06-02 — llm-connect lessons from CUST-WP-0045 canary +# LLM-WP-ADHOC-2026-06-02 — llm-connect lessons from CUST-WP-0045 canary Captured at the close of CUST-WP-0045 T06. The daily-triage canary uncovered a sequence of bugs that took the better part of a day to diagnose, mostly @@ -37,10 +36,9 @@ workplan. ### T01 - Debug envelope mode for /execute responses ```task -id: ADHOC-2026-06-02-T01 +id: LLM-WP-ADHOC-2026-06-02-T01 status: done priority: medium -state_hub_task_id: "69626e9e-29f1-40f6-8cd2-d38a7e802293" ``` When the `LLM_CONNECT_DEBUG=1` env var is set (or `?debug=1` is added to the @@ -77,10 +75,9 @@ debug field is omitted in normal mode. ### T02 - Replace stdlib HTTPServer with ThreadingHTTPServer ```task -id: ADHOC-2026-06-02-T02 +id: LLM-WP-ADHOC-2026-06-02-T02 status: done priority: low -state_hub_task_id: "e2b1be30-71f7-4497-9b10-b0f24d37beba" ``` `llm_connect/server.py` uses `http.server.HTTPServer`, which is single-threaded. @@ -100,10 +97,9 @@ max of their individual latencies, not the sum. ### T03 - Per-call audit log for replay ```task -id: ADHOC-2026-06-02-T03 +id: LLM-WP-ADHOC-2026-06-02-T03 status: done priority: medium -state_hub_task_id: "da4821f0-a876-44ce-9dc3-f3fc67732d0f" ``` When `LLM_CONNECT_AUDIT_DIR=/path` is set, record every `/execute` call as a @@ -126,10 +122,9 @@ ergonomics. ### T04 - Apply param-translation contract to OpenAI and Gemini adapters ```task -id: ADHOC-2026-06-02-T04 +id: LLM-WP-ADHOC-2026-06-02-T04 status: done priority: medium -state_hub_task_id: "f8a033e6-22ac-4700-b8d2-43a5d76a3751" ``` Today's `cd4551c` added a `_merge_model_params` helper in the OpenRouter @@ -154,10 +149,9 @@ forbidden top-level fields, schema in the right wrapper). ### T05 - Provider-agnostic structured-output smoke test in CI ```task -id: ADHOC-2026-06-02-T05 +id: LLM-WP-ADHOC-2026-06-02-T05 status: done priority: medium -state_hub_task_id: "5d53dbb4-b374-45fe-b81c-ff0b222ca74f" ``` CI today does not exercise the round-trip from `model_params.json_schema` @@ -187,10 +181,9 @@ bug) before either was merged. ### T06 - Document required model_params translation in adapter README ```task -id: ADHOC-2026-06-02-T06 +id: LLM-WP-ADHOC-2026-06-02-T06 status: done priority: low -state_hub_task_id: "33fcb951-d7ab-4d3c-8d67-9eebd986c711" ``` Adapter authors and callers both need to know: