Changelog
- 4e6e56d Add Phase 1 worker transcript foundation
- e2b0d28 Add gc reload command (#905)
- 3626b63 Add live worker inference auth hardening
- fc0b14e Add nightly worker inference scaffold
- 92e1778 Add phase 2 worker conformance harness
- 1653aa6 Add phase-3 worker-core catalog test
- d5f0bef Add phase-3 worker-core materialization tests
- cb78eb2 Add startup materialization worker-core tests
- fd17c00 Add worker conformance design
- 6f2e7ce Add worker conformance report scaffold
- a48fa27 Cut worker inference shared corpus over to worker handle
- 348da47 Emit phase-3 worker-core reports
- b903faa Emit worker-core conformance reports
- 708873b Expand provider and supervisor search paths
- 4bd774c Finish gc import launch backlog (#949)
- cc304f6 Fix #580 PackV2 naming and warning cleanup (#856)
- ef43416 Fix CI lint and docsync regressions
- fb9822d Fix CI regressions in session model branch
- 886be44 Fix Discord-bound session delivery edge cases (#811)
- 68da701 Fix RC Gate tutorial and Tier C regressions (#986)
- 6d13087 Fix drained wake decision boundaries
- 232807c Fix identity prefix drift in site-binding rollout
- 548c8b3 Fix imported pack skill discovery and materialization (#887)
- 76b2a8f Fix lifecycle test lint warning
- 4939618 Fix molecule step cleanup during wisp GC (#952)
- 2bcedae Fix named session reservation with pool beads (#1001)
- 37dcb5d Fix order multi-store history regressions
- bc2b09f Fix orphaned rig pool assignment release
- 197bedf Fix provider inheritance CI regressions
- 1b34070 Fix provider inheritance adoption blockers
- 51f77b9 Fix provider inheritance boundary and prompt regressions
- 52b5558 Fix provider inheritance lint regressions
- 5786328 Fix remaining provider inheritance rebase regressions
- 92ddcbd Fix session create command and rollback semantics (#935)
- 18e045e Fix session startup and template lookup regressions
- a5c56dd Fix stale cached lifecycle bead reads
- 97e5114 Fix wake decisions for drained desired sessions
- 066eff8 Fix worker runtime reconstruction follow-ups
- a765b59 Fix worker runtime resume precedence
- 92be910 Harden GC city context resolution
- 239bad1 Harden PackV2 import cache validation
- 5d532de Harden session-model review loop fixes
- 8655d02 Harden worker inference live harness
- 49ff5dc Harden worker live conformance across providers
- 57f1769 Improve detached Gemini interrupts
- 7627200 Isolate provider readiness exec test
- a94e542 Merge branch 'release/v0.15.1' into main
- b6da609 Merge main into fix/worker-api-review-followups-complete
- e89ea7d Merge pull request #1002 from gastownhall/adopt/pr-998-orders-dispatch-runtime
- b3ffe61 Merge pull request #1015 from gastownhall/fix/1013-new-city-status-noise
- f85bb0c Merge pull request #1020 from gastownhall/adopt/pr-994-beads-storage-core-complete
- abe3116 Merge pull request #1021 from quad341/fix/mayor-prompt-command-clarification
- 61095d0 Merge pull request #1022 from quad341/fix/init-provider-pack-first-scaffold
- cde5d8e Merge pull request #1023 from quad341/fix/session-logs-tail-direction
- 6c13bd8 Merge pull request #1031 from spralle/fix/maintenance-script-port-discovery
- 35169de Merge pull request #1037 from boylec/fix/packv2-polecat-spawn
- 0143b0a Merge pull request #1045 from gastownhall/fix/rc-gate-24657724849
- 2d188c0 Merge pull request #1046 from gastownhall/fix/live-in-progress-cache-complete
- 12168bc Merge pull request #1047 from gastownhall/fix/per-agent-append-fragments-complete
- e0fd9aa Merge pull request #1059 from gastownhall/fix/init-obsolete-materialization-complete
- 751bae0 Merge pull request #1061 from gastownhall/fix/tutorial-dolt-start-lock
- 350065a Merge pull request #1066 from gastownhall/fix/tutorial-canonical-dolt-paths-complete
- 02f2955 Merge pull request #690 from wierdbytes/fix/locale-passthrough-launchd
- 512ed41 Merge pull request #704 from mk-imagine/feat/445-gc-prime-strict
- ee3da18 Merge pull request #712 from gastownhall/shared-object-model-ops-layer
- 5138bf1 Merge pull request #725 from gastownhall/codex/rig-path-on-julian-probe
- 19abb36 Merge pull request #732 from sjarmak/fix/719-default-branch-slashes
- 6a63a73 Merge pull request #734 from sjarmak/fix/717-formula-v2-error
- 01e634e Merge pull request #735 from sjarmak/refactor/enable-v2-test-helper
- b7b7b20 Merge pull request #752 from sjarmak/fix/742-reap-stale-session-beads
- 8df437e Merge pull request #771 from Ethee/fix/convergence-custom-type
- a5f6a3b Merge pull request #797 from wynged/fix/sessionstart-matcher-startup
- df7360c Merge pull request #808 from myster-t/fix/dolt-health-hang
- c19e979 Merge pull request #818 from gastownhall/worktree-fix-772-wake-budget
- 69b669e Merge pull request #822 from gastownhall/jk/claude-settings-projection
- c6e466f Merge pull request #823 from gastownhall/fix/acp-nudge-race-716
- 9edd9a3 Merge pull request #831 from quad341/users/gascity/opus-1/ga-k7s-drain-report-fix
- 322fa28 Merge pull request #832 from quad341/fix/sweep-guard-creating-state-pool-spin
- 7bd95b7 Merge pull request #833 from quad341/fix/config-drift-inconsistent-pool-identity
- 4444683 Merge pull request #835 from gastownhall/codex/worker-conformance-upmerge-test
- 4cdbd00 Merge pull request #846 from gastownhall/codex/gc-import-authority-main
- 952ef27 Merge pull request #847 from gastownhall/fix/774-pool-session-workdir-identity
- d4e12bb Merge pull request #851 from gastownhall/fix/ga-nax6-flaky-integration-tests
- 999d7ca Merge pull request #852 from gastownhall/fix/720-patrol-recurring-singleton
- 520c006 Merge pull request #853 from sjarmak/fix/795-init-file-preserves-workspace-name
- 7386b6c Merge pull request #854 from gastownhall/fix/pool-slot-drain-ack-stale-snapshot
- 2577902 Merge pull request #859 from sjarmak/fix/mail-inbox-pool-worker-identity-fallback
- f5e1505 Merge pull request #860 from sjarmak/fix/793-scale-check-work-query-template-expansion
- 77e1bd4 Merge pull request #862 from gastownhall/fix/beadmail-skip-bdstore-label
- eb9682d Merge pull request #868 from gastownhall/fix/flaky-integration-tests-854
- 1246493 Merge pull request #871 from gastownhall/fix/608-agent-add-pack-v2
- a7f988f Merge pull request #872 from gastownhall/fix/remaining-integration-flakes
- 838d8a3 Merge pull request #874 from gastownhall/codex/worker-architecture-hardening
- f1d18a9 Merge pull request #888 from gastownhall/fix/786-bugflow
- b6cef0c Merge pull request #890 from gastownhall/fix/750-controller-messaging
- 4f28b2d Merge pull request #892 from gastownhall/fix/603-init-pack-city-v2
- a7a9713 Merge pull request #897 from gastownhall/fix/597-retry-loop-unification
- 6023c17 Merge pull request #899 from gastownhall/fix/830-bd-rig-provider-resolution
- 9a08562 Merge pull request #900 from gastownhall/fix/607-rig-remove-warning-scope-adopted
- 2cb1781 Merge pull request #901 from gastownhall/fix/ga-2658-imported-pack-skills-complete
- 7dd691a Merge pull request #904 from gastownhall/fix/709-polecat-existing-pr-complete
- 4b8df17 Merge pull request #906 from gastownhall/fix/137-order-dispatch-target-store-complete
- 19313a9 Merge pull request #910 from quad341/fix/fpextra-catalog-cache-drift
- 35d12e2 Merge pull request #911 from trillium/pr/140-wisp-crash-safety
- 44ceb68 Merge pull request #913 from trillium/pr/509-gate-timeout
- 057c931 Merge pull request #914 from trillium/pr/119-config-drift-drain
- da6583b Merge pull request #921 from quad341/fix/603-init-legacy-seams
- 57ef55c Merge pull request #923 from quad341/fix/602-register-no-workspace-mutation
- b748d4e Merge pull request #924 from quad341/fix/784-migration-guide-overlay-singular
- bb1a8e6 Merge pull request #926 from quad341/fix/780-recursive-fsnotify-watches
- 514bd28 Merge pull request #927 from quad341/fix/744-handoff-named-session-no-restart
- 4550975 Merge pull request #928 from gastownhall/fix/804-root-city-imported-named-session-complete
- 763fb8d Merge pull request #931 from gastownhall/fix/783-bugflow-complete
- 8d8805d Merge pull request #933 from gastownhall/fix/787-gc-reload-complete
- ed8832a Merge pull request #934 from gastownhall/fix/633-gc-doctor-split-store-complete
- 6a6a3e4 Merge pull request #937 from sjarmak/fix/663-dolt-transient-cascade
- db6df83 Merge pull request #939 from quad341/fix/938-env-leak-sanitize-base-env
- 0f448a4 Merge pull request #944 from gastownhall/fix/worker-api-review-followups-complete
- d799697 Merge pull request #954 from gastownhall/fix/issue-936-supervisor-hermeticity
- d1b4f0c Merge pull request #955 from gastownhall/fix/600-session-pane-origin-main-complete
- 3ff1da2 Merge pull request #956 from gastownhall/fix/provider-inheritance-complete
- 1facf01 Merge pull request #957 from michael-barker/feat/pack-doctor-fix-script
- 6bca3ec Merge pull request #959 from gastownhall/quality/w1/runtime-command-surfaces
- 782cd47 Merge pull request #963 from gastownhall/adopt/pr-950-drained-wake-boundaries
- 35eee10 Merge pull request #964 from gastownhall/fix/codex-issue-932-complete
- 8721c02 Merge pull request #968 from gastownhall/adopt-pr-861-mail-session-id
- cc6e33c Merge pull request #969 from gastownhall/fix/session-demand-freshness-complete
- 765279c Merge pull request #972 from cwalv/feat/fo-5zeij-rig-adopt
- ea81a64 Merge pull request #976 from gastownhall/fix/946-dolt-health-probe-artifacts
- fd3fc01 Merge pull request #977 from gastownhall/fix/quality-w1-session-identity-complete
- 4757ede Merge pull request #978 from gastownhall/fix/quality-w1-supervisor-daemon-registry-complete
- f060ecf Merge pull request #981 from gastownhall/fix/rc-gate-24640328594-complete
- 63d6b2a Merge pull request #983 from gastownhall/fix/pr452-mail-regression-complete
- d601176 Merge pull request #989 from gastownhall/adopt/pr-965-pack-provider-workspace-complete
- a22174c Merge pull request #993 from gastownhall/fix/quality-w1-controller-city-runtime-complete
- 39ba3b9 Merge pull request #995 from gastownhall/fix/742-followup-named-duplicate-complete
- 3bb985e Merge pull request #997 from gastownhall/fix/upstream-715-unregister-cascade-complete
- 88d1ff6 Migrate supervisor API to Huma/OpenAPI and restore dashboard SPA (#877)
- 425d507 Move review skip_gemini coverage into compile tests (#837)
- 4381053 Move workspace identity into site binding
- 752a8bb Pack V2 cleanup: [imports.X] migration, core-pack consolidation, bd/dolt/maintenance/gastown layout sweep (#809)
- 21942e4 Pack V2 follow-up: bd/hyperscale/lifecycle + bootstrap packs (#817)
- 7b2e4d5 Preserve persisted provider fallback in worker handles
- a95f936 Reduce CI and local test runtime (#826)
- a258288 Refine session identity and graph routing
- 01a8966 Remove dead supervisor health handler
- 3098654 Rename order gates to triggers (#886)
- c656bf8 Roll up worker-core summary artifacts
- aea97fd Route API and CLI read models through worker handles
- cc4934b Route session lifecycle through worker boundary
- 0a79e9b Session model unification phases 0-2 (#666)
- b3ab3c4 Strengthen phase 2 worker conformance harness
- ea11853 Strengthen phase-1 continuation oracle
- a46ccb1 chore(deps): bump github.com/moby/spdystream from 0.5.0 to 0.5.1 (#762)
- 8a77b8d chore: fix gofumpt in desired state helper
- 093d868 chore: remove unused provider helper
- b6c3646 chore: retrigger CI after flaky integration test failures
- 546748d chore: retrigger PR CI
- 6782587 chore: retrigger pr ci
- 76e1e44 chore: untrack .github/bugflow.toml (local operator state) (#836)
- f563666 config: make wake-per-tick budget configurable via [daemon] (#772)
- 0c0d47a feat(doctor): support pack-contributed fix scripts in [[doctor]] entries
- 408aac5 feat(mcp): project provider-native MCP config (#867)
- 12a0a84 feat(worker): add session-backed handle boundary
- 6b643f8 feat: add --strict flag to gc prime for typo detection (#704)
- 8fc3ca4 feat: finish session model phase 2 cleanup
- 3767954 feat: implement session model phase 1 cleanup
- 3fd6f52 feat: provider inheritance (opt-in base field, replaces silent auto-merge)
- 11b1c81 feat: start phase-a rig path removal (#725)
- b186bf9 fix(api): enable formula_v2 in TestFormulaDetailReturnsCompiledPreview (#866)
- d847af0 fix(api): honor rig context when dispatching sling via HTTP API (#807)
- 3946dc2 fix(api): pass through unregistered event types in the list wire (#884)
- ed671c5 fix(bootstrap): address review findings for #846
- 12443f2 fix(cli): gc rig add --include accepts multiple paths (#782)
- b13b388 fix(cmd/gc): address runtime surface review findings
- 9ced81b fix(config): reject unknown pack.toml fields
- 982093f fix(convergence): delete burned speculative wisps
- 1a5802f fix(doctor): cover inherited bd rig city checks
- 2314bc9 fix(doctor): register convergence custom type + merge-preserve on --fix
- bcbd1e9 fix(formula): increase default gate timeout and add per-step timeout override
- 03ae26a fix(gc): expand agent command templates consistently
- 99d2cef fix(mail): fall back through identity candidates when GC_ALIAS does not resolve (#858)
- 748e57a fix(maintenance): discover Dolt port via runtime.sh in exec orders (#1031)
- 7452988 fix(molecule): convert GraphApplyEnabled to atomic.Bool to close config-reload race (#828)
- 1b2a3bd fix(pack): clean stale scripts when layers disappear
- 4da525b fix(packv2): remove top-level scripts shim (#1018) (#1038)
- 173a078 fix(probe): expand {{.Rig}} in scale_check and work_query (#793)
- 2e8555e fix(reconciler): bound recent named-session drift deferral
- 8d1ef69 fix(reconciler): canonicalize session identity across buildDesiredState paths
- 8db0b3f fix(reconciler): defer config-drift drain for active named sessions
- bce7947 fix(reconciler): free pool slot after drain; never trust stale ownership snapshot
- 1b6ecc5 fix(reconciler): harden named-session drift deferral
- 23d5e3b fix(rig): fail closed when checking existing .beads
- 038a9b9 fix(rig): refuse to re-init an existing .beads/ store without --adopt (fo-5zeij)
- d9c1ed3 fix(runtime): keep demand snapshots conservative
- ba06594 fix(sessionlog): preserve agent mapping error context
- d60583f fix(sessionlog): surface broken agent transcript reads
- 4a44107 fix(supervisor): add --wait to supervisor stop; use in integration cleanup
- 36cf970 fix(supervisor): propagate shutdown status and harden stop waits (follow-up to #868) (#875)
- bd82571 fix(tmux): clean up prompt temp files
- f5231d5 fix(tmux): eliminate silent inline fallback for large prompts (#1037)
- 6be166e fix: address PR 1045 review findings
- 3f67e13 fix: address controller messaging review feedback
- 4d3c30e fix: address second session model review pass
- c947f5d fix: address session model review findings
- a0e0aa3 fix: address session review regressions
- a7d36b4 fix: address two remaining integration-test flake classes
- 5f364cd fix: align API mail recipient resolution
- 115941a fix: align api named-session resolution guards
- 995a0a9 fix: align init overlay directory convention
- 68e8135 fix: align pooled workdir identity across session entrypoints
- c22cf32 fix: allow bare and qualified session identifiers to coexist (#1005) (#1006)
- 582d5c2 fix: allow imported named session templates
- 4bac5f8 fix: allow pack description metadata (#1000)
- cbc16f4 fix: avoid duplicate managed hook startup prompts
- fd5b881 fix: avoid materializing mail recipients
- 707e909 fix: avoid singleton caps in e2e named sessions
- 7bd068a fix: backfill legacy pooled session identities
- c4bb343 fix: cache last-good skill catalog to stop FPExtra drift oscillation
- 9e07b47 fix: canonicalize lsof-reported dolt paths
- ed7e689 fix: canonicalize managed dolt runtime paths
- 12cb985 fix: canonicalize missing GC home path ancestors
- 0c37fc9 fix: clarify controller ownership messaging
- f7fc9a6 fix: clarify pooled identity continuity paths
- dd47164 fix: clean lint fallout after rebasing PR 712
- b29cd08 fix: clean new city status output
- 0eff591 fix: clean session model lint fallout
- 093b76b fix: clear deferred codex trust dialogs on first delivery
- f99d916 fix: clear rebased lint debt on conformance branch
- 18543c7 fix: clear worker boundary codeql findings
- 530a042 fix: close graph contract migration gaps
- b521326 fix: close molecule descendants during wisp cleanup
- a4a21f4 fix: close remaining security alerts (#987)
- c91da76 fix: close remaining session review gaps
- 957fe40 fix: close source workflows deepest-first
- e48bcd0 fix: coerce cache event metadata (#1051)
- e224b0b fix: complete mixed-provider scope routing
- 84c0e19 fix: complete named session handoff handling
- 05b16e1 fix: constrain recursive config watches
- 11cc80b fix: cover pooled session identity edge cases
- 2ea28d1 fix: cover session review edge cases
- 9773442 fix: crash-safe speculative pour before gate evaluation (#911)
- 0f6dd41 fix: detect legacy bd split stores in doctor
- 7e30e3c fix: document fake worker helpers
- 24b0149 fix: document remaining worker exports
- 259c45a fix: document runtime handle exports
- ed668dd fix: document worker catalog exports
- f308c08 fix: document worker handle exports
- 87660b7 fix: drop dead desired-state helper after restack
- 217c3d2 fix: drop duplicate dispatch route tests
- 059e6b7 fix: drop pool.check from FingerprintExtra to stop drift oscillation
- d66c63f fix: drop stale session meta config param
- 51a0406 fix: drop unused attachment metadata wrappers
- 6b5bde0 fix: enforce source workflow singleton recovery
- de657f5 fix: error on v2+ formula compilation when formula_v2 is disabled (#717)
- 02429b3 fix: expose rig pack commands
- a9acca6 fix: fail closed on rig binding load errors
- c0b6e5b fix: filter materialized expansions before duplicate checks
- 09c5f32 fix: force-stop lingering tmux sessions on shutdown
- 463c65c fix: formula jq filters drop .[0] and silently return empty on bd show --json (#810)
- 3adeddb fix: gc doctor config-refs false positives for schema=2 packs (#759) (#829)
- 7d5e98b fix: gc dolt cleanup --force is a no-op for orphans at default data-dir location (#711) (#721)
- 93af651 fix: gc dolt health completes in bounded time on unresponsive server (#808)
- d2793bc fix: gc init --provider emits pack-first scaffold matching docs
- cce0367 fix: gc session logs --tail N returns last N entries, not first N
- 9f40e7e fix: guard attachment caching metadata reads
- 082037e fix: guard root pack service provenance
- 459b501 fix: handle ci lsof and controller probes
- dd70922 fix: harden API blocking parameter parsing (#948)
- e184dac fix: harden bd split-store doctor check
- 9835359 fix: harden beads storage cache recovery
- 5d6114c fix: harden concurrent dolt startup wait (#1042)
- 1468831 fix: harden e2e config rewrites
- dd8ade9 fix: harden e2e named session rewrites
- 92da2b5 fix: harden isolated supervisor service installs (#954)
- f079d8e fix: harden live worker interrupt handling
- 3d86998 fix: harden maintenance script Dolt targeting
- 9f3da8a fix: harden mixed-provider routing checks
- 737f7ca fix: harden pack doctor fix scripts
- ca02013 fix: harden post-security follow-up checks (#996)
- 91546a8 fix: harden rc gate portability checks
- fcb76a3 fix: harden recovered reconciler panic state
- 0d0292e fix: harden skill catalog cache semantics
- 5f33ff1 fix: harden stream state across transcript rotations
- d305a34 fix: harden transcript wake resolution and stall detection
- bc3221e fix: honor legacy rig order run history
- d7d334c fix: honor runtime worker nudge cancellation
- f63a71c fix: hydrate session lifecycle stop targets before dispatch
- 4367518 fix: ignore GC_ALIAS in runtime fingerprint (#869)
- 89c169e fix: include V2 binding name in /v0/config agent response (#792)
- d879094 fix: isolate aliasless pooled sessions in unique workdirs
- 6d00fa3 fix: keep city path in status output
- d7293a9 fix: keep claimed bead queries fresh
- ab4acdf fix: keep cmd hook wrapper lint-clean
- b41aa63 fix: keep session streams resilient to missed fsnotify writes
- f589983 fix: keep v1 attachments on molecule flow
- 1f4432d fix: limit live in-progress bead queries
- aad0842 fix: make gc init emit a pack-first scaffold (#892)
- 72f7363 fix: make native gc import authoritative
- 8b9af29 fix: materialize builtin packs before config loads
- 13636df fix: materialize expansion-local conditional branches
- 94a6af6 fix: move rig paths into .gc/site.toml (#850)
- 662556b fix: order tracking sweep races dolt server startup on restart (#754)
- 6cd9bba fix: pass locale env to managed tmux sessions
- bada4a1 fix: persist codex continuation ids for worker restart
- 92ea263 fix: prefer session id for mail identity
- c7eeeca fix: preserve config-rejected session target misses
- 7525a38 fix: preserve e2e named sessions during config edits
- aca9390 fix: preserve expansion extends ordering
- 006da5d fix: preserve extended expansion templates
- 8432d2c fix: preserve fallback mail sender identity
- 7d11a9b fix: preserve init global fragment semantics
- ea7bf6e fix: preserve legacy probe metadata during init
- 0f9ae60 fix: preserve manual pooled session identities
- f83b869 fix: preserve migrated default rig pack imports
- f1184dc fix: preserve named session review invariants
- 0b78355 fix: preserve provider defaults for manual sessions
- ab63d79 fix: preserve register aliases through reload
- e9a10a2 fix: preserve reload failures when city dir is missing
- 25f698f fix: preserve retired session resources
- b927059 fix: preserve runtime fallback for city status
- 509a871 fix: preserve runtime worker event semantics
- 7c98d84 fix: preserve session stream and worker resolution semantics
- d455c6b fix: preserve singleton aliases while canonicalizing pool identities
- 46d75c4 fix: preserve slashes in DefaultBranch() for refs/remotes/origin/ (#719)
- d019687 fix: preserve status fallback for down supervisor
- 497f1d1 fix: preserve template GC_ALIAS when bead alias is empty (root-cause fix, alt to #798) (#834)
- c2a7bc2 fix: preserve transcript stream contracts
- 0f7ecc2 fix: preserve unresolved expansion conditions
- 9038fca fix: preserve workspace.name from source template in gc init --file and --from (#795)
- d4d154f fix: prevent managed dolt helper inheriting start lock
- a08adac fix: print usage for invalid gc invocations
- 9a4a78a fix: project city Claude settings into runtime --settings
- c0bd3ee fix: propagate scope-aware provider routing
- 9617f79 fix: quiet rig registry config scans
- b97e191 fix: race in ACP Provider.Nudge after Interrupt_RunningSession
- f111a3c fix: reconcile api stream handlers after worker rebase
- 05acd97 fix: reconciler reaps session beads whose tmux session is dead (#742)
- 33957ac fix: recover reconciler panics to prevent full-city cascade (#663) (#937)
- 7f26e53 fix: redact thinking blocks in transcript stream projection
- 6f19369 fix: refresh worker transcript state on wakeups
- c2f672e fix: regenerate append_fragments artifacts
- f957559 fix: reject duplicate expansion template ids
- 1eedc40 fix: remove beadmail label supplement
- c1a4ff4 fix: rename "Gas Town Control Center" to "Gas City Control Center" (#764)
- 26ccce5 fix: rename gc init tutorial template to minimal (#1062)
- cfb6960 fix: renumber gc init progress steps to remove duplicate [6/8] (#1016)
- b342a2b fix: repair RC gate failures from run 24640328594 (#953)
- 85f97db fix: repair worker stack rebase on main
- 27f526b fix: require existing session for worker reset
- 799e17f fix: require explicit graph contracts for expansions
- b373d4d fix: reset fresh wake conversation metadata (#985)
- d86228d fix: reset logwatcher stalls on wake
- c1655d4 fix: resolve empty script layers from callers
- 830236f fix: resolve registered rigs from site bindings only
- 349a5b3 fix: resolve session review gate regressions
- dcb3f00 fix: respect conditional expansion duplicates across compile paths
- 7438665 fix: respect polecat branch and existing PR metadata
- b3bfbff fix: respect rig import transitive command filtering
- b28ac6f fix: restore bare-name attach for V2-bound named sessions (#800) (#802)
- e8699c1 fix: restore bd-backed rig routing under file cities
- c6bed7f fix: restore cmd hook merge compatibility
- a83b214 fix: restore green CI after main rebase
- 5ee3b88 fix: restore worker branch ci regressions
- 37ee42b fix: restore worker conformance compatibility after main rebase
- 7414dbf fix: restore worker conformance make targets
- 8794bf0 fix: rig-scope gc formula cook and show (#1004) (#1010)
- a292493 fix: route rig-scoped orders to rig bead stores
- 218955c fix: satisfy check gate naming lint
- a71c129 fix: satisfy controller conflict lint
- d204ba3 fix: satisfy worker boundary lint gate
- 5036068 fix: scope SessionStart hook to startup matcher to stop prompt re-injection on resume (#797)
- 7c753a7 fix: scope pooled alias compatibility to cli flows
- 12bb9a6 fix: scope rig registry warning suppression
- 65e2b2a fix: scope rig session beads provider
- cddbe39 fix: scrub GC_/BEADS_ env vars when running gc-beads-bd in tests
- 0c6bddc fix: shut down sessions when city runtime exits
- 27b231d fix: skip leaked duplicate named-session beads
- 2413920 fix: skip post-unregister supervisor probes when city dir is gone
- 53f0c92 fix: skip restart request for named sessions on self-handoff
- 9799dce fix: stabilize beads/Dolt contract and managed recovery (#790)
- ae54c4a fix: stabilize e2e supervisor isolation
- 6179ea4 fix: stabilize mac rc gate tests
- 9277d6e fix: stabilize managed Dolt lifecycle probes (#951)
- 4826ef5 fix: stabilize parent-child ownership wiring
- 19e38f9 fix: stabilize rc gate formula workflows
- 876a231 fix: stabilize rest-full integration shard (#922)
- 4c12b5d fix: stabilize supervisor integration checks
- 8e329fb fix: stabilize suspend resume and review check flakes
- 5d7b764 fix: stamp gc.routed_to on legacy [[steps]] formulas (#796) (#919)
- eddf7b7 fix: stop dropping Dolt health probe database
- e961297 fix: stop gc register from mutating committed city.toml
- a7ef1f7 fix: stop writing global rig path index
- 014ff1e fix: support per-agent append fragments
- 004bf7a fix: surface wisp gc partial failures
- 89d6db6 fix: suspend scaffolded agents via agent.toml
- 45683b6 fix: sweep guards for creating state and post-create pre-wake window
- e34f0cb fix: throttle reconciler drain log on stuck drains (#855) (#929)
- 3b30230 fix: tighten reload failure handling
- 62afb5b fix: unbreak worker conformance CI
- 233f969 fix: unify huma session stream history reload semantics
- f463e92 fix: update gc init stdout to reflect V2 agents/ prompt layout
- 6aa101b fix: update init name call sites after rebase
- 155f6ec fix: upgrade stale Claude SessionStart matcher
- 55fee9f fix: use concrete workdir identities for pooled sessions
- 33cee12 fix: validate existing PR handoff metadata
- 2531b94 fix: validate graph fanout expansion contracts
- bb2203a fix: validate nested formula check aliases
- e54378a fix: validate strict prime templates before hook side effects
- ff42a49 fix: wait for codex interrupt boundary
- 46a4507 fix: wake agent output streams on worker events
- 1ea1013 fix: wake raw session stream pending state without output deltas
- 265eae4 fix: watch nested subdirs so v2 convention edits trigger hot reload
- e5cb4c9 fix: watch v2-resolved pack dirs in WatchDirs and Revision (#925)
- 28465c7 fixup(dolt-health): address adoption review findings
- 70fb8f0 fixup: address adoption-review findings for #852
- d3fdecb fixup: address adoption-review findings for #862
- 06a261f fixup: address imported skill adoption review findings
- fdc8d88 fixup: address review findings on pool-slot close path
- 93ba055 fixup: align sweep guards with sessionStartRequested semantics
- 8c3442d fixup: atomic.Bool for FormulaV2Enabled + CompileExpansionFragment negative test
- ae83c12 fixup: clear stale locale env for managed sessions
- bb26c8e fixup: cross-store live ownership checks; retire ownership snapshot
- 9cfa885 fixup: document upgrade contract for creation_complete_at fail-open
- 0309247 fixup: drop unused readEmbedded path parameter (unparam lint)
- 21e8809 fixup: extend post-create sweep guard to state=awake; hard-code recovery claim clear
- 69da581 fixup: fall back to GC_SESSION_ID for default mail reply sender
- c7005a3 fixup: fold pending_create_claim clear into atomic start batch
- e358164 fixup: force-overwrite adds owner-read minimally; never widens user-tightened perms
- 558cabe fixup: force-overwrite also normalizes file mode so Claude can read --settings
- 6bf15c2 fixup: gate post-create sweep guard on per-start creation_complete_at marker
- aab24bd fixup: gofumpt formatting + misspell fix
- 848d531 fixup: harden formula step timeout propagation
- 8a8d5dc fixup: lint — gofumpt + misspell
- 4bc10ca fixup: narrow unreadable-blocks-fallback to hook only; force-overwrite unreadable runtime
- b91e16b fixup: negative-case tests for freeable allowlist and drain-ack error path
- b9a380e fixup: port convergence custom type + address review findings
- 404b6fe fixup: preserve sleep_reason, hoist pool guard, test close-gate error
- a371ddd fixup: propagate live-query pattern to remaining close paths
- 60f7d9c fixup: propagate projection errors, fix stale-pattern escape, respect pinned hook precedence
- f932601 fixup: remove dead includeBlockedOpen branch; rename stale test
- db3ec9e fixup: retire dead snapshot helpers; refresh stale rationale comment
- 76cb65e fixup: single Claude projection chokepoint, hook ownership, tolerant fallback
- 09408c3 fixup: stamp creation_complete_at on recovery heal; drop dead helper
- 2164db2 fixup: surface empty preferred override; readable-probe in attach fallback; real-FS force-overwrite test
- 43ea04b fixup: sync session logs tail docs and tests
- b3ed555 fixup: tighten sweep guards against crash/churn aliasing and stale-creating
- 1afd49a fixup: unreadable legacy candidate no longer silently demotes hook precedence
- 4f76770 formula: allow check in place of ralph
- 838716f lint: fix adoption lint fallout
- 7bbf021 merge: sync PR 914 with latest main
- 99580c0 merge: sync PR 914 with main
- e56c1bd obs(dispatcher): trace skip reason when control bead is not open (#865)
- a8da16e quality: Wave 1 beads storage core (#994)
- cec3b04 quality: Wave 1 config core and validation (#971)
- a721fc2 quality: Wave 1 controller city runtime (#973)
- 7623927 quality: Wave 1 orders and dispatch runtime
- b7b0b23 quality: Wave 1 runtime command surfaces (#959)
- 189efcf quality: Wave 1 runtime provider core (#988)
- 4224448 quality: Wave 1 session lifecycle (#967)
- cc0cbda quality: Wave 1 supervisor daemon registry lifecycle (#970)
- 2865c25 refactor(runtime): cache stable demand snapshots
- 3d9c642 refactor: centralize api resolved session config
- ddb26f6 refactor: centralize worker construction and transcript boundary
- 24aaccb refactor: drop raw stop fallback for retired named sessions
- 16d368c refactor: extract EnableV2ForTest helper to reduce flag toggle boilerplate (#735)
- 3789f97 refactor: extract shared domain layer for sling, convoy, and agent resolution (#712)
- d0beac8 refactor: finish worker boundary cutover
- fb91929 refactor: finish worker lifecycle actuation cutover
- cd648d2 refactor: harden resolved worker runtime inputs
- 1c7ed7a refactor: move resolved worker session creation into factory
- 1e4c7fe refactor: move worker authority toward phase 4 boundary
- ab1687b refactor: move worker resolution into factory
- 3362b0b refactor: narrow worker factory session runtime hook
- d7f02fa refactor: normalize resolved worker runtime inputs
- 1a8b541 refactor: normalize worker runtime resolver outputs
- bb074ce refactor: project session streaming through worker history
- 5c16a47 refactor: record operation events for runtime handles
- c86f102 refactor: record structured worker operation events
- 47c237f refactor: remove obsolete init materialization paths
- 46db2eb refactor: route attach and submit through worker handles
- 5a016dd refactor: route close and named retire through lifecycle patches
- 8412548 refactor: route lifecycle consumers through projection
- 9b5b079 refactor: route lifecycle probes and api reads through worker
- 91068bf refactor: route nudge and runtime observations through worker
- d850255 refactor: route pending session reads through worker handles
- d79508b refactor: route prepared session starts through worker handles
- 703200f refactor: route runtime handles through worker factory
- 75e6797 refactor: route session admin and transcript reads through worker
- 46d1d2e refactor: route session creation through worker handle
- 3baf30e refactor: route session lifecycle stops through worker handles
- 0ebfe69 refactor: route session list observation through worker
- 54b5814 refactor: route session new creation through worker handles
- 0a90da8 refactor: route session nudge delivery through worker handles
- e1061ed refactor: route session template materialization through worker handles
- 675140b refactor: route suspend callers through worker handles
- 927b061 refactor: split agent output handler modules
- 2492b3a refactor: split api session runtime and stream helpers
- 88faf4d refactor: split phase2 conformance helpers
- 3a5366f refactor: split session create handlers
- f1f47d7 refactor: split session interaction handlers
- df437fa refactor: split session transcript handlers
- d442574 refactor: split worker handle into capabilities
- 1fd605f refactor: split worker session handle modules
- ab73d3c refactor: use transcript tail activity in worker state
- 8398ff8 refactor: wake session streams on worker events
- fce9477 refactor: wake transcript streams on file writes
- c6528d6 regen schema after docstring update
- 6464b2a review fixups: wake-budget test coverage, drop cli.md churn, docstring
- 77d7689 review: address adoption-review findings for Nudge recovery path
- f0c7f43 session: clear claude interrupt buffer before submit
- c54a7f3 test(cmd/gc): cover slash-containing default branches at consumer boundary
- 7aeb0b8 test(integration): align repeated start e2e with supervisor
- ddc9e8b test(integration): decouple review checks from dolt
- 66a0e55 test(tier_b): bound dumpDiagnostics and propagate Dir to named_session
- 26c8399 test(tier_b): reserve named_session so lifecycle agents start without work (ga-k7s)
- 457ba3d test-gnx8 Seed Claude onboarding state for CI
- 6fe3111 test-i3hu Keep continuation on known transcript path
- 039545b test-t16l test-i3hu Harden worker inference tmux checks
- 8ff275d test-ufwk Route acceptance_c Claude through Synthetic