diff --git a/TODO.md b/TODO.md index b32d7cb..7eac6e7 100644 --- a/TODO.md +++ b/TODO.md @@ -2,11 +2,13 @@ ## Governed architecture roadmap -- [ ] Deliver [ticket-058](project/ticket-058/README.md): make configured Twine +- [x] Deliver [ticket-058](project/ticket-058/README.md): make configured Twine publication retries idempotent at runtime and migrate legacy commands - through doctor PY013. State: `IN_PROGRESS / PUBLICATION`; configuration producers - and governance-owned `goal.yaml` are deferred to dependent bounded tickets; - classification: `BUG / P0 / regression`; depends on ticket-057. + through doctor PY013. State: `DONE / DONE`; configuration producers and + governance-owned `goal.yaml` are split into dependent bounded tickets; + 615 tests (2 skips), protected CI and + exact-head Validator approval passed; PR #96 merged unchanged as + `f1e5c0e...`; classification: `BUG / P0 / regression`; depends on ticket-057. - [x] Deliver [ticket-057](project/ticket-057/README.md): publish the merged mutation-free PR-resume repair as Goal 2.1.299. State: `DONE / DONE`; PR #94 diff --git a/project/ticket-058/README.md b/project/ticket-058/README.md index 96fa345..630b135 100644 --- a/project/ticket-058/README.md +++ b/project/ticket-058/README.md @@ -2,8 +2,8 @@ - **ID**: ticket-058 - **Owner**: unresolved:human -- **Status**: IN_PROGRESS -- **Workflow state**: PUBLICATION +- **Status**: DONE +- **Workflow state**: DONE - **Created**: 2026-08-12 ## Goal and scope @@ -30,7 +30,7 @@ reported both artifacts as already present. No registry object was replaced. pattern and auto-fixes either defect to the safe canonical command. - [x] AC-04: Focused and full tests, Ruff, governance and a bounded live Glon reproduction prove a retry succeeds without modifying the source checkout. -- [ ] AC-05: Protected CI and Validator Agent approve the exact final PR head +- [x] AC-05: Protected CI and Validator Agent approve the exact final PR head before merge. ## Non-goals @@ -65,3 +65,9 @@ reported both artifacts as already present. No registry object was replaced. skipped both existing immutable files. The bounded clone was removed. - The full suite passes 615 tests with 2 existing skips; scoped Ruff, governance and whitespace validation also pass on the final candidate. +- PR #96 passed Python 3.12/3.13 and remote lifecycle on exact HEAD + `21af56d709b0802b8bdac4bb66ce8a2e4e6f3d51`. Validator run + `31625243552` and review `4919597743` deterministically approved that SHA. +- PR #96 merged as `f1e5c0e79741e032214d6ec88cdf52e347a40c22`; its second parent and + tree equal the approved candidate. Post-merge CI `31625465011` passed both + supported Python versions and the remote ticket branch was deleted. diff --git a/project/ticket-058/ai-codex-logs.txt b/project/ticket-058/ai-codex-logs.txt index 4428a5f..decc463 100644 --- a/project/ticket-058/ai-codex-logs.txt +++ b/project/ticket-058/ai-codex-logs.txt @@ -6,3 +6,6 @@ 2026-08-12T17:53:00Z focused validation: 59 runtime/doctor tests PASS; scoped Ruff PASS; governance GOV-PASS 0 errors/0 warnings; git diff --check PASS. The module's existing github_fallback_actionable compatibility patch point remains exported with an explicit F401 exemption because two fallback regressions patch it. 2026-08-12T17:55:00Z live Glon: disposable clone of ae7ea3533f0e0c1decffda78a25aed3a6931a63a changed exactly 1 insertion/1 deletion in the Python publish line; sibling Node/Rust publish lines unchanged. Public/local 0.1.28 wheel sha256 d845c2a23be9ea87b75ac5587ec5c231ad3f97b48c117198111c41c635f3fe43 and sdist sha256 e2af788f01f6590935c59a139627f0932a48f3429a2425f601b4f8a7916d68b3 matched; resolved retry returned 0 and skipped both existing artifacts; temporary clone removed. 2026-08-12T17:58:00Z final local candidate: 73 fallback/runtime/doctor tests PASS; full suite 615 PASS/2 SKIP; scoped Ruff, governance 0/0 and git diff --check PASS; ticket moved to IN_PROGRESS/PUBLICATION pending protected exact-head validation. +2026-08-12T17:59:42Z protected validation: hosted Python 3.12/3.13 and remote lifecycle PASS; Validator run 31625243552 review 4919597743 deterministically approved exact HEAD 21af56d709b0802b8bdac4bb66ce8a2e4e6f3d51. Advisory chunk-boundary comments did not identify an actual missing file; all three chunks and complete diff were deterministically covered. +2026-08-12T18:00:22Z merge: PR #96 merged as f1e5c0e79741e032214d6ec88cdf52e347a40c22; merge second parent and tree equal approved candidate; remote branch deleted. +2026-08-12T18:01:30Z post-merge: CI run 31625465011 PASS on Python 3.12 and 3.13 at exact merge SHA; implementation lifecycle complete. diff --git a/project/ticket-058/ai-codex.md b/project/ticket-058/ai-codex.md index 81fbddb..1abbe3c 100644 --- a/project/ticket-058/ai-codex.md +++ b/project/ticket-058/ai-codex.md @@ -34,6 +34,9 @@ doctor and immutable retry must not depend on a prior config rewrite. rewrite that cannot alter sibling Node/Rust publish commands. - Proved the safe retry on exact Glon 0.1.28 public artifacts from a disposable clone and removed the clone after source-diff verification. +- Delivered exact candidate `21af56d...` through hosted CI and deterministic + Validator approval, merged it unchanged as `f1e5c0e...`, and confirmed + green post-merge CI before closing the lifecycle. ## Blockers diff --git a/project/ticket-058/changelog.md b/project/ticket-058/changelog.md index 8f1f07a..a57e0f9 100644 --- a/project/ticket-058/changelog.md +++ b/project/ticket-058/changelog.md @@ -12,3 +12,5 @@ checkout or sibling publisher commands. - Passed 615 full tests (2 existing skips), scoped Ruff and deterministic governance before protected publication. +- Recorded exact-head Validator approval, unchanged-tree merge and green + post-merge Python 3.12/3.13; closed the implementation lifecycle.