Skip to content

feat(canon): E0008.4 Phase 2 closeout ledger + flip handoff to superseded#161

Merged
klappy merged 1 commit intomainfrom
feat/e0008-4-phase-2-closeout
Apr 30, 2026
Merged

feat(canon): E0008.4 Phase 2 closeout ledger + flip handoff to superseded#161
klappy merged 1 commit intomainfrom
feat/e0008-4-phase-2-closeout

Conversation

@klappy
Copy link
Copy Markdown
Owner

@klappy klappy commented Apr 30, 2026

Summary

Closeout for E0008.4 Phase 2 (klappy/oddkit#155, squash-merged 67741bd). Items 1–4 shipped to main; Item 5 deferred to 0.29.0.

This PR adds the closeout ledger and flips the Phase 2 handoff to status: superseded.

What this captures

Closeout ledger at klappy://odd/ledger/2026-04-30-encode-vodka-refactor-phase-2-landed:

  • All four mandatory items shipped (governance_uris plural, (letter,facet) dedup, Open in fallback, governance_extended self-teaching surface)
  • Item 5 deferred to 0.29.0 per the handoff's defer condition (spans both repos; current check.includes works for existing criteria)
  • Two Cursor Bugbot findings on the original commit, both real bugs the in-session smoke battery missed (trigger-word path facet propagation; TSV typeMap collision)
  • Cursor Agent autofix 47fc7e0 landed both fix-forwards on the same branch
  • Sonnet 4.6 read-only validator agent dispatched, returned PASS with code-level + live-preview + prod-delta cross-check
  • Third end-to-end application of the release-validation-gate canon (P1.3.3 wrote it, P1.3.4 inherited it, Phase 2 is the third — smoothest yet)

Status: ACTIVE pending operator action

The ledger is status: active, not status: complete, because prod promotion at oddkit.klappy.dev is outstanding:

  • main-oddkit.klappy.workers.dev confirms serving 0.28.0 (post-merge preview)
  • oddkit.klappy.dev still serves 0.27.0 (production custom domain pinned to a manually-promoted version)
  • Cloudflare Workers Builds CI created a new "preview" version on the merge but does not auto-promote to the prod custom domain
  • wrangler.toml has no routes block; CI's ci.yml has no production-promote step
  • Per user-canon: "do NOT run wrangler deploy manually"

Promotion is operator-side action via the Cloudflare Workers dashboard (or wrangler versions deploy with a CF API token). The dedup bug (verified live: [O-open P1] body returns quality.score: 4 / maxScore: 4 with typeName: "Observation (Open)") remains live in production until the click happens.

After operator promotion, smoke oddkit.klappy.dev:

  • oddkit_version should return 0.28.0
  • [O-open P1] body should return quality.maxScore: 5 and typeName: "Open"

Then a follow-up commit flips this ledger from status: active to status: complete.

New constraint surfaced

[C-02 new] in the ledger documents this prod-promotion gap explicitly so future closeouts disposition it correctly: when prod promotion is outstanding at closeout time, the ledger stays active, and any future ledger that claims "shipped to prod" must verify by direct prod-endpoint smoke, not by inferring from CI status.

See also


Note

Low Risk
Documentation-only change that adds a new ledger entry and updates handoff metadata; no runtime or data-handling code is modified.

Overview
Adds a new closeout ledger entry (odd/ledger/2026-04-30-encode-vodka-refactor-phase-2-landed.md) documenting E0008.4 Phase 2 outcomes (Items 1–4 landed, Item 5 deferred, validation/Bugbot notes) and tracking that prod promotion is still outstanding.

Updates the Phase 2 handoff (odd/handoffs/2026-04-30-encode-vodka-refactor-alternative-d-revised.md) to mark it superseded and link it to the new ledger via superseded_by.

Reviewed by Cursor Bugbot for commit 3f5c8a4. Bugbot is set up for automated code reviews on this repo. Configure here.

…eded

Closeout ledger at klappy://odd/ledger/2026-04-30-encode-vodka-refactor-phase-2-landed documents the Items 1-4 ship via klappy/oddkit#155 (squash-merged 67741bd), Item 5 deferral to 0.29.0, two Cursor Bugbot findings dispositioned via Cursor Agent autofix 47fc7e0 (Bug 1: trigger-word path facet propagation; Bug 2: TSV typeMap collision), Sonnet 4.6 read-only validator PASS verdict on all four items, and the open prod-promotion gap (main-oddkit.klappy.workers.dev serves 0.28.0; oddkit.klappy.dev still on 0.27.0 awaiting operator-side version-promote in the Cloudflare dashboard).

Ledger status remains 'active' pending operator promotion of 67741bd to oddkit.klappy.dev. Per [C-02 new], when prod promotion is outstanding at closeout time the ledger is active (not complete) and a follow-up commit flips status after the operator confirms.

Handoff klappy://odd/handoffs/2026-04-30-encode-vodka-refactor-alternative-d-revised flipped from status: active to status: superseded with superseded_by pointing at the new ledger.

Three end-to-end applications of the release-validation-gate canon now: P1.3.3 (wrote it), P1.3.4 (inherited it), Phase 2 (third application, smoothest yet).
@github-actions
Copy link
Copy Markdown

Canon Quality — oddkit_audit

No dead klappy:// references or legacy link patterns found in writings/. 39 files scanned.

Spec: klappy://docs/oddkit/specs/oddkit-audit · Workflow: .github/workflows/canon-quality.yml · Run: #25

@klappy klappy merged commit 239cc36 into main Apr 30, 2026
2 checks passed
@klappy klappy deleted the feat/e0008-4-phase-2-closeout branch April 30, 2026 19:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant