diff --git a/TODO.md b/TODO.md index b011270..99c0bcd 100644 --- a/TODO.md +++ b/TODO.md @@ -51,9 +51,9 @@ - [x] Deliver [ticket-017](project/ticket-017/README.md): assign the remaining atomic release metadata to integration before ticket 012 publishes. State: `DONE / PUBLICATION`; classification: `SERVICE / governance`. -- [ ] Deliver [ticket-018](project/ticket-018/README.md): infer the synchronized +- [x] Deliver [ticket-018](project/ticket-018/README.md): infer the synchronized version transition after a stale tag so post-publication metadata delivery - does not select a duplicate patch. State: `IN_PROGRESS / EDIT`; + does not select a duplicate patch. State: `DONE / PUBLICATION`; classification: `BUG / application`. - [ ] After governance bootstrap, execute the sequential phases defined in [the refactoring plan](docs/GOAL_KORU_SUBACTOR_REFACTORING_PLAN.md), with one @@ -64,7 +64,7 @@ > `ticket-006 DONE`; `ticket-007 DONE`; `ticket-009 DONE`. > `ticket-010 DONE`; `ticket-011 DONE`; `ticket-012 IN_PROGRESS`; > `ticket-013 DONE`; `ticket-014 CANCELLED`; `ticket-015 DONE`; -> `ticket-016 DONE`; `ticket-017 DONE`; `ticket-018 IN_PROGRESS`. +> `ticket-016 DONE`; `ticket-017 DONE`; `ticket-018 DONE`. > **Recently shipped (manual note):** `goal all [PATHS...]` monorepo sweep — > runs `goal -a` in every git repo with uncommitted changes under the given diff --git a/project/ticket-018/README.md b/project/ticket-018/README.md index 18edc46..3a73ad4 100644 --- a/project/ticket-018/README.md +++ b/project/ticket-018/README.md @@ -2,8 +2,8 @@ - **ID**: ticket-018 - **Owner**: unresolved:human -- **Status**: IN_PROGRESS -- **Workflow state**: EDIT +- **Status**: DONE +- **Workflow state**: PUBLICATION - **Created**: 2026-08-10 - **Work classification**: `BUG / application` @@ -26,7 +26,7 @@ request the next release. - [x] AC-03: Real package source committed after the transition remains publishable, and existing pre-bump/version-resolution behavior stays green. - [x] AC-04: Focused history/version tests and the full Python suite pass. -- [ ] AC-05: Fresh-base governance and exact-head protected delivery pass. +- [x] AC-05: Fresh-base governance and exact-head protected delivery pass. ## Session authorization @@ -65,3 +65,14 @@ is authorized. - Human participant: unresolved; no user-* file was created. - Agent participant: [ai-codex.md](ai-codex.md) + +## Publication + +- Governed delivery produced [PR #34](https://github.com/semcod/goal/pull/34). +- CI passed on Python 3.12 and 3.13. +- `ifuri-validator-agent` approved exact head + `a96e79f86d7c3194a0a14c5bfca41777e6d4466a`. +- The protected PR merged as + `114d62a3f2b37ff89f2ee05bcd2d142cd06d6609`. +- Package publication is intentionally handled by a subsequent release slice; + this application ticket did not mix release metadata into its diff. diff --git a/project/ticket-018/ai-codex-logs.txt b/project/ticket-018/ai-codex-logs.txt index 5ea1168..fa538fd 100644 --- a/project/ticket-018/ai-codex-logs.txt +++ b/project/ticket-018/ai-codex-logs.txt @@ -11,3 +11,7 @@ - 2026-08-10: Fresh-base governance passed with zero errors and warnings. - 2026-08-10: The first protected-delivery attempt correctly rejected REVIEW while implementation files were present; restored EDIT for PR delivery. +- 2026-08-10: PR #34 passed Python 3.12/3.13 CI; validator run 31381519101 + approved exact head a96e79f86d7c3194a0a14c5bfca41777e6d4466a. +- 2026-08-10: Protected merge completed as + 114d62a3f2b37ff89f2ee05bcd2d142cd06d6609; ticket moved to DONE/PUBLICATION. diff --git a/project/ticket-018/changelog.md b/project/ticket-018/changelog.md index d5d08e2..9b81887 100644 --- a/project/ticket-018/changelog.md +++ b/project/ticket-018/changelog.md @@ -11,3 +11,6 @@ after it; focused tests passed 27/27. - Full Python validation passed with 510 tests and 2 expected skips; fresh-base governance passed with zero errors and warnings. +- CI passed on Python 3.12 and 3.13; the validator approved exact head + `a96e79f86d7c3194a0a14c5bfca41777e6d4466a` and PR #34 merged as + `114d62a3f2b37ff89f2ee05bcd2d142cd06d6609`. diff --git a/project/ticket-018/intent.json b/project/ticket-018/intent.json index b61371f..526cb90 100644 --- a/project/ticket-018/intent.json +++ b/project/ticket-018/intent.json @@ -22,7 +22,7 @@ "conflictsWith": [], "integrationTicket": null, "delivery": { - "acceptedBaseSha": "d2523133bc57ef79d8d273a784fe8d97a0b8e89a", + "acceptedBaseSha": "114d62a3f2b37ff89f2ee05bcd2d142cd06d6609", "targetBranch": "main", "outcome": "Post-release metadata delivery stays on the published version while source committed after the synchronized version transition still requests a new release", "nonGoals": [