✠ The Chronicle

✠ ENTRY XLV


The loop's own design work gets grounded

kb-query moves off a gitignored local clone onto the live Cloudflare Worker, and ship-a-phase/plan-a-phase/iterate/world-spec/story-spec are now wired to consult it before deciding. Phase G1 ships, closing the build plan's last fully-open row. A small catalog fix unreds verify-drift. /expand files two candidates (an owner-ruled in-house crash capture, escalated by a second unreproduced crash; a lexicon gap for retired preset/route ids, independently rediscovered three times). The owner raised march's cadence from every 6 hours to every 2. Breadth is green, baseline is fresh, critique pass 30 still current.

INFRA

kb-query goes live — the Cloudflare Worker replaces the local clone

What changed

Switches the kb-query MCP server from a stdio process reading a gitignored local kb/ clone to the live Streamable HTTP endpoint the KB repo now deploys — same six tools, same names, so no caller changes, but the corpus is now whatever main last deployed instead of whatever one machine last synced. Also fixes check-harness-grants' isMain guard (a file:// string-concat check that silently no-op'd on Windows), points verify-drift at _claude-skill.yml too, and grants kb-query to cloud ticks.

Why it changed

Sessions were querying stale local snapshots — one was verified 20+ commits behind the live corpus (2f42303 local vs 3753bd1 live) — instead of a consistent, always-current source of truth.

commits 16422820 · 4beddec3 · fab689db · 768d542a

INFRA

loop and design skills now consult kb-query before deciding

What changed

ship-a-phase / plan-a-phase / iterate now query kb-query + axio-query (or the grounded specialist agents — card-expert, mechanics-expert, content-curator) before design, brief, or balance decisions, with the agents/tools named directly in each skill's quick-reference block. world-spec / story-spec do the same for region-hazard and campaign/unlock-structure shapes (character-spec stays excluded — personhood/voice has no board-game-mechanic analog in the corpus). /expand gains a new signal source: recurring KB reception complaints and answered WISHLIST gaps can now seed phase candidates.

Why it changed

Grounds the loop's own design calls in prior-art evidence instead of memory, using the transport that just went live above.

commit 0549fab8

MECHANICS

catalog drops the retired BARRIER glyph key

What changed

Removes a dead GLYPH_SHAPES entry that verify-drift has been catching since phase V6's glyph unification (2026-08-30) retired the free-glyph vocabulary but left this one table's copy behind. The BARRIER mechanic stays fully live (types, pricing, two cards, the editor field, its own face-kind rendering); only the unreachable free-glyph key is gone. The table also feeds the catalog's glyph legend and keyword count, so the dead key was drawing a phantom row on a published page.

Why it changed

Unreds verify-drift on main, which has been red since d6bbd1b8.

commit e712ed5f

INFRA

march cadence raised to every 2 hours

What changed

The scheduled march tick moves from every 6 hours to every 2 (23 */6 * * *23 */2 * * *).

Why it changed

Owner-directed (T, 2026-09-01) via PR #268; reason not stated in the commit. Ticks still share the nexus-loop concurrency group, so a long tick queues the next rather than stacking.

commits b11caaf2 · 7fa0db91 · ee · PR · 268

✠ The marginalia


Measurement freshness

Fresh — baseline 5ed91434, measured 2026-08-31, confidence reduced-nightly; no mechanics-source commits landed since. No re-measurement needed this window.

The night's watch — what ran while nobody looked
when (UTC)verboutcome
2026-08-31 22:54–23:36marchsuccess — kb-query live-Worker switch + Phase G1
2026-09-01 05:16–05:29marchsuccess — loop/skill kb-query wiring + expand pass 10 (2 candidates filed)
2026-09-01 07:57PR #268 mergeops: march cadence 6h → 2h (human-initiated, not a march tick)
2026-09-01 11:44–11:52marchsuccess

All march runs since the last digest succeeded; no crashes, no cancelled runs.

The measure — did the fighting change?

None from this digest's own meta-loop rail — critique pass 30 is still current, no starved queue or hibernating ceiling in this window's pulse, and the one cadence change already happened directly via an owner-merged PR rather than a digest proposal. (Separately, /expand filed its own two phase candidates this window — see Queues now; those route through /oversight, not this rail.)

What is still unfinished
  • Build plan: 0 open phases ([ ]), 11 partial ([-]), 122 shipped —

1 more shipped than the last digest read (Phase G1 closes the build plan's last fully-open row).

  • plan/AUDIT.md: 105 rows under "Pending" (44 tagged [x]-resolved,

3 more marked RESOLVED inline but not yet swept — bookkeeping, not backlog; ~58 genuinely open). One more resolved than last digest (Phase G1).

  • plan/CRITIQUE.md: 54 rows under "Pending" (~26 not marked

resolved); unchanged since last digest — last full pass still 2026-08-29 (pass 30, no new findings).

  • plan/PHASE_CANDIDATES.md: 66 rows under "Pending" (~48 genuinely

open candidates plus pass logs); /expand pass 10 filed two new ones this window — in-house crash capture (score 8.5, an owner-ruled 2026-07-20 scope never promoted, now backed by a second independent unreproduced-crash report) and register retired preset/route ids in lexicon.json (score 6.5, the same drift class the mechanism already catches elsewhere, independently rediscovered three times in eight days). Both await /oversight promotion.

  • No open triage:needs-user or loop:do issues.
  • Deploy: clean — HEAD 7fa0db91 has no gated workflow triggered yet

for this docs/plan-only tick (nothing to check).

  • Nightly breadth (e2e:minigames): ALL PASS — hazard (both safe

and risk routes played end-to-end), combat-encounter, encounter-routing, exploration/combat-prelude round trip, the upgradeable-dice flag-on stack, and the 10-run sandbox+live combat-round suite all green.

The nightly entry also carries a panel addressed to the maintainer — open questions, permission grants, things only he can rule on. It is held back from this page: it is correspondence, not a report. The unfinished work it tracks is published above, in plain words.