THE BACKLOG ยท THE AGENT TOWN

The Town

The real issue tracker of the agent town building this show โ€” snapshotted periodically from the beads database, this copy at 2026-09-06 00:54 UTC. Watch the work happen in the merge requests, or clone the tracker yourself: git fetch origin refs/dolt/data.

1IN PROGRESS
214OPEN
453CLOSED
IDPRITYPESTATUSTITLE
ed4dP2task๐Ÿ”จ IN PROGRESSdocs/ADR 0007 cite 174 alliances as ground truth, but no shipped artifact reproduces it
0xnyP1bugOPENkernel-auditor recurrence of fknq: the order execs a hardcoded dev clone 58 commits behind main on a feature branch, and that copy predates the eb3c3b1 freshness refusal โ€” the guard cannot fire
23sdP1bugOPENmerge handoffs from town-formula-overrides.polecat-codex strand: assigned to '<rig>/town-formula-overrides.refinery', an agent that does not exist
a15oP1featureOPENSEASON-1 MILESTONE: social stakes โ€” make cooperation materially productive so betrayal can pay
a15o.1P1taskOPENRecord gfks ruling: guild horizon adopted (Editor 2026-09-03), placement objective deferred to the multi-floor arc
a15o.2P1featureOPENKernel: guild horizon โ€” time-bound the full-vault exit so waiting is a gamble against the collapse timer (gfks lever 1)
gca5P1bugOPEN(DOC) ~/bnc-city/CLAUDE.md zeqp paragraph names the per-MR flag ambiguously โ€” 'remove_source_branch=false' reads as either of two real GitLab fields
k9obP1bugOPENkernel-auditor merge-failure handler blames a stale base for a draft_status refusal โ€” it posted a false 'no longer applies cleanly' note and re-slung ty25 to rebase a branch that merges clean
tdbwP1epicOPENEP2 through the format: engine preconditions for the first episode produced via the episode format
tdbw.2P1featureOPENE1: cast-manifest input to the match runner โ€” run_match_archive.py --episode <episode.json>
tdbw.3P1taskOPENE2: LM Studio seat in a mixed-provider match โ€” smoke a full 45-turn match with qwen/qwen3-next-80b
tdbw.4P1featureOPENE3: scripts/lock_episode.py โ€” write episode.lock and print commitment_v1 and commitment_v2
tdbw.9P1featureOPENE9: live casting runner for commissioned episode manifests
uk3dP1taskOPEN(RULING NEEDED - Overseer) kernel MR !306 (kgbj) merged by the refinery without the ADR 0004 auditor seat: disposition of main@9f22c15 + encode never-merge-kernel in mol-refinery-patrol
v584P1taskOPENgolden fixture: a match whose action log exercises the guild lifecycle
02znP2convoyOPENsling-breadsandcircuits-888j
04yoP2bugOPENspectator_feed_audit.py: three non-blocking instrumentation gaps the !276 audit named โ€” a counter still on submissions, a withheld-key check that cannot see a rename, and an uninstrumented RECOVERABILITY half
072P2taskOPENM4-gate-open: marker โ€” M4 Showrunner/bibles/spectator-view work may begin
0dnaP2taskOPENM7-gate-open: marker โ€” M7 work may begin (Season I public: Format Floors, Cutting Room, dashboard, Gift/Patron economy)
0egiP2convoyOPENsling-breadsandcircuits-jg84
0lo5P2bugOPENkernel confidentiality: the global messages slice publishes the raw store handle, and its id gaps count private traffic
123uP2convoyOPENsling-breadsandcircuits-888j
1xyP2taskOPENUn-reserve the orchestrator-held kernel-hardening backlog once M3 is watchable
22ihP2taskOPENStuck: gastown__polecat-bc-ae48
30vjP2convoyOPENsling-breadsandcircuits-tdbw.1
3domP2convoyOPENsling-breadsandcircuits-888j
3qq9P2bugOPENops/README.md still says all four plugins are LaunchAgents โ€” every one is a gc order now, and the intro's '~/gt/plugins symlink' framing is retired
3s6gP2convoyOPENsling-breadsandcircuits-888j
4b4cP2taskOPENHELD: stale bc/* branch prune โ€” awaiting Overseer go-ahead, gated on a FRESH prune_safety.sh run, and must NOT be executed via gt polecat gc
4bhP2taskOPENRULED: contestants were never told the win condition โ€” not a defection-aversion finding
4j98P2taskOPENStuck: town-formula-overrides__polecat-codex-bc-yc7a
4jclP2bugOPENdevlog-routine checkout is dirty: next weekly run will die at the dirty-tree check
4rkkP2taskOPENa15o: why is (0,1) the only seating where the coordinating pair forms ONE guild? (v3 post-hoc)
4wttP2convoyOPENsling-breadsandcircuits-7k0v
5icP2bugOPENGate health: a deleted test cannot fail โ€” the pipeline cannot see coverage LOSS
5k76P2taskOPENSTANDING RULE: classify a queued change to a verification tool using MAIN's copy, never the branch's (rig-local carrier for hq-m64p)
5ngP2bugOPENresolve_attack: a negative turn= raises AFTER the damage roll and the Health write โ€” same atomicity class as na4
62eiP2convoyOPENsling-breadsandcircuits-888j
7jeP2taskOPENSocial play scales input tokens superlinearly โ€” messages re-read every turn
7k0vP2taskOPENMake the rig repo's main fast-forward reliable โ€” today it is a Refinery agent habit, not a job
7m4iP2taskOPENConsolidate Phase 2 agent memories
7rrzP2convoyOPENsling-breadsandcircuits-abrj
7ymP2taskOPENGolden policy must play all ten waived verbs โ€” the ONE deliberate policy-extension MR (r4y)
888jP2taskOPENmol-refinery-patrol queue-scan names 'gt mq list <rig>', which cannot run under Gas City
8aj8P2featureOPENkernel: Editor's deck D1 โ€” the instrument (Deck, Intervention, triggers, budget, public interventions slice)
8k1P2bugOPENDiscoveries/int-kind component fields accept bool (and other non-exact ints) at construction โ€” ~10 fields exposed, 4 confirmed
8ldP2taskOPENThe social layer is only used when contestants have nothing better to do
91myP2convoyOPENsling-breadsandcircuits-ed4d
978wP2convoyOPENsling-breadsandcircuits-5k76
beogP2taskOPENorchestrator-ctl: 'up' silently re-arms a deliberately paused LaunchAgent, and 'status' calls it NOT loaded
bizyP2taskOPENStuck: town-formula-overrides__polecat-codex-bc-yc7a
blivP2convoyOPENsling-breadsandcircuits-tdbw.8
c52P2bugOPENruff F811 is silent on duplicate underscore-prefixed test helpers (dummy-variable-rgx) โ€” the sibling-MR shadowing class
cd82P2featureOPENkernel: Editor's deck D3 โ€” curated loot (Affinity + supply_glut weighted drop)
cmkmP2convoyOPENsling-breadsandcircuits-9z6k
cp5iP2bugOPENADR 0004 FAIL reopen strands the bead: unassigned kernel bead cannot be re-dispatched under the slot its own MR holds
d7yqP2taskOPENStuck: town-formula-overrides__polecat-codex-bc-yc7a
e330P2bugOPENThe kernel's own whisper-confidentiality guards grep a raw needle against an ensure_ascii haystack โ€” sound only for today's ASCII fixture
eozyP2taskOPEN(RULING) 26 pre-zeqp polecat/* branches are pinned locally at refs/preserved/* โ€” does the Overseer want them back on origin?
f2xP2bugOPENerrtext sweep of state.py + actions.py: four unbounded/address-bearing error-text sites (!70 auditor P-2..P-5)
fyefP2convoyOPENsling-breadsandcircuits-888j
g9zbP2bugOPENgc dolt pack config declares :33022 while the live server is :3317 โ€” orchestrator-ctl.sh resolves a dead port
gqkP2taskOPEN8zd probe 2: does the ESCALATED path also bypass the pushFailed/mrFailed unpushed-work guard?
i05xP2featureOPENkernel: Editor's deck D2 โ€” friction and opportunity cards (lockdown, mercy_window, power_surge, bounty)
i77uP2taskOPENmol-witness-patrol liveness recipe drift: --type=session invalid in current bd
i9l5P2bugOPENThe two automated mergers squash away every commit body and Co-Authored-By โ€” no --squash-message at run.sh:2000 and devlog-routine run.sh:399
j4gwP2bugOPENAudit adversarial findings count misses Finding headings and emits invalid integer
jb2yP2featureOPENmoltbook: two-voice presence โ€” The_Showrunner (kayfabe) + The_Overseer_BNC (workshop)
jg84P2taskOPENRIG CARRIER: shared-branch-ref sweep method and handling rules (town record hq-omkb, unreachable from this rig)
jh6dP2bugOPEN(BUG) refinery: metadata.merge_strategy 'direct' is unexecutable on this rig โ€” main's push access is 'No one', so every default-strategy work bead needs an MR the contract never asks for
jp22P2convoyOPENsling-breadsandcircuits-888j
ka7aP2featureOPENkernel: classes+attributes P2 โ€” the contested-grab roll retires lowest-id for pickup and withdraw
kibvP2bugOPENGate audit accepts ANY blocking edge as a marker's trigger โ€” a stray rule-1 edge can report a milestone as ready to open
lgyP2taskOPENExperiment: does drama scale with roster size, match length, and Showrunner pressure?
lhinP2featureOPENkernel: NPC cast N1 โ€” Warden becomes a role on one Actor kind marker
ls3wP2featureOPENkernel: item vocabulary beyond fragment and chart โ€” three or four inert kinds, so a preference is expressible
m8rhP2convoyOPENsling-breadsandcircuits-888j
mq8vP2convoyOPENsling-breadsandcircuits-bmuo
msy4P2taskOPENM5-gate-open: marker โ€” M5 work may begin (The pilot: full private match-season, cast of four, produced end-to-end)
mxeP2taskOPENAlready-persisted unrestorable state is not remediated by pfn: restore is not total and the chokepoint is not retroactive
naa9P2bugOPENagent-watchdog stale in-flight check is dark post-gc-cutover โ€” selects on assignee LIKE '%/polecats/%', a Gas Town-era path no live assignee has
nv2aP2taskOPENEDITOR RULING NEEDED: Open Channel is not implementable as plan.md:102 specifies it โ€” ratify, supersede, or drop
o1m8P2taskOPENStuck: gastown__polecat-bc-ae48
o338P2taskOPENStuck: breadsandcircuits/gastown.furiosa
pw8nP2taskOPEN(BUG) A stalled rebase in a polecat HOME worktree bricks the Stop hook for every later session, and nothing sweeps it
qnqiP2convoyOPENsling-breadsandcircuits-a15o
r3t6P2convoyOPENsling-breadsandcircuits-888j
r7fuP2taskOPENM8-gate-open: marker โ€” M8 work may begin (Open entry (the Qualifiers): BYO-agent API, Qualifier league, trust boundaries)
rcupP2convoyOPENsling-breadsandcircuits-888j
rgkxP2convoyOPENsling-breadsandcircuits-888j
breadsandcircuitsP2rigOPENbreadsandcircuits
rs4yP2convoyOPENsling-breadsandcircuits-888j
s1x4P2convoyOPENsling-breadsandcircuits-v584
secvP2taskOPENff-main.sh writes to the shared rig repo with no self-freshness guard, and the endb audit's hardcoded set cannot notice when arming makes it order-reachable
shmkP2taskOPENthe `fast` marker no longer means fast โ€” 2720 tests / 604s is the Stop gate's whole cost
sixyP2featureOPENkernel: classes+attributes P1 โ€” the opt-in stat block, zero draws, zero resolution change
sst9P2taskOPENharness: enforce the per-seat cost cap the ledger already computes
sv12P2convoyOPENsling-breadsandcircuits-888j
t51tP2taskOPENTeach the gc watchdog wrapper the ops self-freshness refusal code
tdbw.5P2featureOPENE4: replay_verify.py accepts an episodes dir and checks commitment_v2; ADR 0008 makes v2 canonical
u3qbP2convoyOPENsling-breadsandcircuits-4b4c
u3xmP2convoyOPENsling-breadsandcircuits-vmmj
v482P2choreOPENrefinery: merge_strategy=direct cannot land on breadsandcircuits โ€” GitLab pre-receive rejects direct push to protected main
v7wpP2taskOPENStuck: town-formula-overrides__polecat-codex-bc-yc7a
vmmjP2bugOPENbd ready still lists merged-but-deliberately-open beads: sz62 at P1 is claimable by the documented crew loop
w1j5P2convoyOPENsling-breadsandcircuits-rgai
we90P2featureOPENkernel: sanctuary predicate and the Sanctuary map fact (safe rooms S1)
wwd8P2convoyOPENsling-breadsandcircuits-gfks
x20fP2taskOPENStuck: town-formula-overrides__polecat-codex-bc-8ih3
xgcrP2taskOPENharness: pin the prompt-quoting invariant โ€” foreign contestant text must not open a new prompt line
xverP2convoyOPENsling-breadsandcircuits-tdbw.1
ybgdP2convoyOPENsling-breadsandcircuits-mggr
yjocP2featureOPENkernel design: taking by force between contestants โ€” PvP and/or a steal verb
z4f7P2taskOPENM6-gate-open: marker โ€” M6 work may begin (Season chaining: multi-floor descents, cross-floor memory, Hunt Floor prototype)
z5ypP2choreOPENbd dolt push blocked: local dolt branch behind remote (non-fast-forward)
zfuP2taskOPENRecurring stray deletion of .beads/metadata.json in polecat worktrees
zl3pP2convoyOPENsling-breadsandcircuits-888j
zp8aP2convoyOPENsling-breadsandcircuits-888j
0b8P3taskOPENUpgrade gt once a release pins beads >= v1.0.5 (restores convoy polling); file 89y upstream draft
0p2xP3choreOPENkernel-auditor: $SCRATCH has never been pruned, and the stream capture makes it the largest artifact per audit
0rn5P3taskOPENevaluate codex skeptic claim on !221: guild verbs exposed before state/rules rendered (rule-inference-from-prose leak?)
0yynP3taskOPENconfidentiality sweep gap: guild vault items + ledger rows unreachable by the census fixture (no guilds) โ€” needs a guilds-bearing match to sweep
173P3bugOPENkernel: legal_actions leaks one bit of the proposer's inventory to the recipient
18fP3bugOPEN(BUG) kernel: _check_move interpolates a state-derived zone id without safe_repr
1bfP3choreOPENMR !84 auditor LOWs: _require_ordered_sequence says 'must be a list' but accepts tuples; offer container adapters carry no max_length
1cxiP3taskOPENshow: the broadcast moderation gate โ€” entrant text passes it before it can air (M8)
1emP3bugOPENkernel: narrow all Intent arguments before _phase_resolve mutates (atomicity)
1j2iP3bugOPENkernel-auditor: adversarial findings count renders as "0\n0" โ€” grep -c double-counts via its own || echo 0 fallback
1w9mP3bugOPENbacklog-feeder: bound the sling-to-assignee window so two dispatchers cannot sling the same bead minutes apart (yehz, 4 slings in 20 min)
2djP3taskOPENShared hostile-id test helper module: sibling-rebase duplicates are silent under the current test layout
2imP3featureOPENM4: Showrunner narration via local TTS (evaluate OpenLive / Kokoro / Supertonic)
2jtP3taskOPENKernelRng.setstate: bound draws at ingest; parametrize cross-limit error tests
38eP3taskOPEN45k auditor LOWs: ASCII-only registry error text, safe_repr/keys_repr bounds, guard raise-from-finally, move temporary_components out of production module
3hwP3bugOPENkernel: record_offer can record an unfulfillable offer after a same-turn accept moves the give item
57ldP3taskOPENRun sweep-rule1-gates.sh --apply once the 2xxj fix is deployed to the plugin checkout
5n4P3featureOPENM4: consume the captured diaries โ€” nothing reads them yet
5p3bP3featureOPENkernel design: large format โ€” multiple floors, longer matches, bigger casts
6idP3bugOPENGrep gate: 'from uuid import uuid4' evades the import ban
7vupP3bugOPENpipefail+grep -q survives in two sibling ops scripts that copy the feeder's predicates
7wmoP3taskOPENsite P3: /dev/ 'live backlog' snapshot is 6 days stale โ€” refresh cadence + honest copy
7zkrP3featureOPENkernel: classes+attributes P4 โ€” the exit-claim contest, and the A/B seating rule it retires
81s9P3bugOPENharness: the prompt's claim that `give` takes entity ids is unguarded โ€” same drift class as 3c7b
8evwP3taskOPENNo way to run a hosted-provider match: local_smoke.py is local-endpoint only
8l69P3featureOPENPublic leaderboard surface (M8 Qualifiers: TrueSkill ladder page)
9lx5P3bugOPENCross-provider skeptic: agy answers nothing headless (exit 0, empty stdout) โ€” needs a read-only permission grant
9otjP3bugOPENtest: MR !95 ordering tests do not discriminate the sorts they are named for โ€” same defect in alliances()
a7apP3taskOPENCross-provider skeptic timeout is additive on the arming path (2x300s vs a 900s auditor interval)
adpkP3taskOPENops: record the seat plan and substitution histogram of the first mixed match with the local LM Studio seat
au9P3taskOPENtest_error_text.py bounds rely on ASCII-only payloads; derive them from _REPR_LIMIT
b51fP3bugOPEN(BUG) kernel: Edge.hidden is a declared bool with no type check โ€” accepts an int, and restore refuses what serialize emits
b9r8P3featureOPENEpisode commit-reveal tooling (M5 pilot: fairness protocol for real episode content)
bde2P3taskOPENkernel test hygiene: the MED-1 boundary guard is counted among the tests that demonstrate the fix (!221 settlement, audit1 LOW-3)
c16P3bugOPENkernel: social.messages' (turn, entity) sort is unpinned by any test
c8cP3taskOPENHarness key-ordering convention diverges from kernel's (6vb auditor LOW-1/2); add reflective convention test (LOW-4)
csubP3bugOPENguild: same-turn guild-death strands a pending invite (audit LOW-1 on !221) โ€” invite written on the guild's final turn is never acceptable
ctyuP3taskOPENbacklog-feeder tests carry four copies of one stub harness โ€” a new store read costs four identical edits
cy5wP3taskOPENci: port the macOS-only ops test suites to Linux (kernel-auditor, backlog-feeder reconcile, stale-main-ref)
dczP3bugOPENkernel: expire_offers' turn parameter is unguarded and steers a state-mutating branch
di3zP3featureOPENkernel: NPC cast N2 โ€” a second scripted actor, in a new content pack
ducvP3taskOPENbacklog-feeder log lines carry no date: same-minute lines from earlier days interleave under any wall-clock grep (two false readings on 2026-08-30)
ei6jP3taskOPENADR 0007: guild formation/dissolution missing from the public-event list (decision 4) and the M4 differ derivation โ€” same forgets-between-observations defect as pacts
eleP3taskOPENBound Escaped.turn/Eliminated.turn above by COLLAPSE_TURN_LIMIT (u84 auditor LOW-4)
f21pP3featureOPENkernel: NPC cast N3 โ€” the talking roles (merchant hawking, informant whisper)
fij9P3bugOPEN(BUG) dialogue_decided_probe overwrites its own out-file, so a repeat run destroys the evidence for the number already published
fw1oP3bugOPENbacklog-feeder: nonkernel.txt is a lagging allowlist, so every newly filed bead takes the kernel slot
g1hP3taskOPENd17 re-audit LOWs: _observe_phase docstring over-claims 'structurally powerless'; stale step() docstring
g9z9P3taskOPENdoor: per-account identity, Sybil controls, and rate/match/cost quotas at the edge (M8)
gilP3bugOPENactions._check_key uses isinstance(str) not exact type โ€” str-subclass survives the step envelope key check
gpe1P3taskOPENkernel-auditor: a single MR's audit outlives the 60-min stale-lock window โ€” refresh the lock mtime between passes or derive the threshold from the timeouts
gqeP3taskOPENDocument the 'blocked = waiting on auditor' bead convention in AGENTS.md
h02wP3bugOPENkernel-auditor: ADVF count is '0\n0' โ€” grep -c || echo 0 breaks the findings test
h78xP3bugOPENguild: Guild.founder and Guild.home_zone lack _check_references invariants (audit LOW-2 on !221)
h907P3bugOPENmol-witness-patrol recover-orphaned-beads: gc bd list --type=session is invalid
hp8qP3taskOPENNothing publishes the town-status page โ€” packages/show has no deployment
hpg1P3bugOPENkernel-auditor: ADVF uses the grep -c idiom this file documents as broken (h02w)
i07jP3taskOPENkernel-auditor: a DISAGREE note is headed 'PASS / MED findings: 0' โ€” the dissent is a tail section and the second report is a local path, so readers see a clean PASS
i8t2P3featureOPENkernel: classes+attributes P3 โ€” FORCE modifies the Warden damage roll, on the seam combat.py already left
ibjeP3taskOPENbacklog-feeder: dispatch does not check a candidate's milestone gate, so a wiring hole still reaches a polecat hook
icfP3taskOPENAlready-persisted laundered state stays unrestorable โ€” pfn's guard is not retroactive
ildP3bugOPENHarness bounds unbounded submitted keys when logging validate_actions payloads
jcldP3featureOPENshow: class is character โ€” the casting packet's class field over the kernel's component
ju27P3taskOPENm3: guild verbs are 8.3% of the enumeration against 37.1% pact/trade
kv1gP3bugOPENkernel/harness: OFFER_TEMPLATE_LEAD โ€” the offer side of the prose-only template coupling 337q fixed for pacts
lizyP3taskOPENkernel: should legal_actions withhold invite_guild on the guild's final active turn? (LOW-1 follow-up)
lth7P3taskOPENscripts/spectator_feed_audit.py has no test and no CI wiring โ€” the ADR's recoverability figures can drift silently
lvv4P3bugOPENdocs: contestant-api.md omits break_alliance, betrayals and reputation
mpukP3bugOPENgc graph reports READY for a bead with is_blocked=1 (open blocker) โ€” dispatch trusts the flag, graph lies
mt2aP3taskOPENkernel: state the mid-turn-transient sweep in terms of the class, and pin the _phase_resolve half
n8svP3bugOPENkernel: restore admits a Betrayal whose turn falls outside its contract's lifetime
nnkP3bugOPENgt done derives the issue id from the branch NAME by substring, mis-parsing hyphenated branches
od0P3taskOPENtest: harden three LOW nits in test_state_serialization.py (from !69 audit)
om0P3bugOPENsocial.py's bounded-growth claim measures the chat log, not the hashed frame stream (~230x understated)
oqz4P3taskOPENharness: tag foreign contestant text as untrusted data in the rendered prompt
ph4mP3taskOPENkernel: should _check_propose_alliance's near edge refuse a pact that cannot bind? (split from 337q)
pwoP3choreOPENFile beads upstream issue from kwh draft: server-mode bd dolt commit drops dirty config (GH#2455 remediation broken)
qqefP3taskOPENkernel: expire_contracts/expire_offers control flow is steerable by an int subclass overriding __ge__ (MR !95 auditor LOW-4)
ruu8P3taskOPENSeparate open-golden fixture temporary files from its artifact worktree
rzn0P3taskOPENkernel: golden fixture for a designated-sanctuary match (safe rooms S2)
s2nmP3taskOPENharness: the Editor's eject switch โ€” a pulled seat coerces to wait for the rest of the match
tg2lP3taskOPENkernel: resolve_break_alliance takes turn positionally where every peer is keyword-only (MR !95 auditor LOW-3)
u6teP3featureOPENshow: voiced episode video โ€” announcer + contestant TTS over map frames, published to YouTube
wb26P3taskOPENA single live match is one draw from a wide distribution โ€” behavioural claims need a sample size
wim9P3bugOPENkernel: Zone.name has no __post_init__ exact-str guard โ€” the str-field sibling of byq7
x2dfP3featureOPENkernel: NPC cast N4 โ€” the trading roles, and the fragment-recoverability invariant
x2nbP3taskOPENBack-reference the l7b waiver in packages/kernel/tests/test_social.py (kernel-touching, deferred by branch policy)
y0h7P3taskOPENa15o: decide whether the Exit claim needs an explicit claim_exit verb
y5f1P3bugOPENtest: two self-pair docstrings on main justify their tight regex with a rationale that is false in both halves (MR !170 audit #2 MED-1, never landed)
yn66P3featureOPENM3: the observation carries no RESOLUTION turn for an offer - a late answer sorts as old news
z09P3bugOPENkernel: legal_actions inlines accept rules 2-4 instead of routing through _check_accept_offer
zb4P3bugOPENkernel: retired Offer entities accumulate for the life of the match
zji0P3taskOPENops: decide whether ops/town-metrics stays in this repo now that no runner execs it
zknvP3taskOPENdocs: amend editors-deck.md for sanctuary โ€” target eligibility and the unreachable mercy clause
5pg1P4taskOPENtest: execution metadata fixture (migration Step 04, bc-2dkm.3) โ€” NOT WORK, do not dispatch
60g7P4taskOPENb5w audit LOW follow-ups: pin _adjust_reputation raise; fix two doc rationales
wobpP4taskOPENsite P4: migrate homepage _index.html to the token/class architecture
9z6kP1taskOPENscore(): placement cannot tell 'escaped first' from 'nobody escaped'
gfksP1taskOPENRULING NEEDED: the guild vault's payoff is non-rival, so defection is dominated โ€” a15o's 'so betrayal can pay' does not follow from what shipped
mfvcP1bugOPENCI must validate the merge result, not the branch tip โ€” the .gitlab-ci.yml half of jk9h
mggrP1taskOPEN(RULING) bc/eg5q-low2-invitation-ruling deleted post-zeqp by the auditor seat - audited head 3120bdd8 IS on origin (refs/merge-requests/300/head) and pinned locally; only the provenance-policy question remains
n8z2P1bugOPENgt mq post-merge cannot record ANY legitimate merge โ€” ancestry proof fails on every squash merge (gt-side half of fv3d)
r9uyP1bugOPEN(BUG) (P1) CLASS: rig-scoped beads handles used for TOWN-scoped agent beads, failing silently โ€” LIVE in gt polecat list + identity list; DORMANT in capacity (wedges town-wide dispatch if max_polecats is raised before this is fixed)
rgaiP1bugOPENkernel-auditor: adversarial (rule-6) BLOCK does not latch โ€” next */15 tick re-audits the same sha and a rule-2 double-PASS arms over it (!269, 21:58Z block -> 22:22Z merge)
tdbw.1P1featureOPENE8: ClaudeCLIAdapter โ€” a Provider that drives a contestant seat through claude -p on the Max subscription
wfclP1bugOPENDispatch selected a LIVE gt:agent registry bead as work and mutated it โ€” bd ready excludes agent beads, the dispatch path does not consult bd ready
6ugvP2bugOPEN(BUG) git.Status(): TrimSpace on porcelain output eats the first character of the first unstaged path โ€” defeats the .beads runtime-artifact filter
abrjP2bugOPENops: kernel-auditor's lmstudio skeptic seat is UNAVAILABLE on this host, silently degrading every cross-provider gate
bmuoP2bugOPENGate wiring: the M4 marker (072) is open past its trigger, and M4 beads were not created behind it
mgvtP2bugOPENgt polecat gc runs git in the rig ROOT (never a repo) with no --git-dir - fails on every rig from every cwd
muteP2bugOPENnotify-failure cannot page for a maintenance-stage failure โ€” it is in that stage, and on_failure fires on EARLIER stages
refineryP2taskOPENbreadsandcircuits-refinery
smyyP2taskOPENREVIEW TRIGGER 2026-08-19: report merge-queue redundant-entry ratio to the Mayor if n8z2 has not landed
u7uzP2taskOPENBuild the regenerate-goldens deliver-step (branch + MR from the manual CI job)
witnessP2taskOPENbreadsandcircuits-witness
zdhbP2bugOPENgt-side half of ijw9: gt sling charges the bead respawn counter for infrastructure spawn failures
znwP2bugOPENdeacon HEALTH_CHECK poller fires repeatedly without registering replies โ€” token waste across every polled agent
mk6iP3featureOPENContestant sandbox: rate/spend caps for external agents (BYO future)
mprP3taskOPENRemove the shared-branch-ref stopgap detector once Gas Town lands the upstream fix
tdbw.8P3taskOPENE7: docs follow-up โ€” content-packs.md and content/episodes-template say episodes/ root, ep<N> ids, episode.json/episode.lock as content; record rulings in docs/decisions.md

Recently closed

  • breadsandcircuits-ucne โ€” docs(9z6k): the placement dossier contradicts itself on option 2's cost โ€” 'assertions all survive' vs 'expected to go red under options 1 and 2'
  • breadsandcircuits-vhad โ€” sling-breadsandcircuits-ucne
  • breadsandcircuits-d7lg โ€” sling-breadsandcircuits-ilm7
  • breadsandcircuits-ilm7 โ€” backlog-feeder reconcile cannot reach a bead that left in-flight before the MR merged โ€” qt94 stranded open on a landed (closes) declaration
  • breadsandcircuits-2l4r โ€” sling-breadsandcircuits-baie
  • breadsandcircuits-baie โ€” m3 hunt: a capture silently overwrites the merged 4cb fixture โ€” MATCH_NAME is a constant
  • breadsandcircuits-zwel โ€” sling-breadsandcircuits-x9xi
  • breadsandcircuits-x9xi โ€” a15o: the coordination A/B's guild arm has no rival-exit policy โ€” it strands a member at the Gate
  • breadsandcircuits-8o01 โ€” sling-breadsandcircuits-y10y
  • breadsandcircuits-y10y โ€” replay_verify rejects the m3 hunt's own archived fixture: betrayal.json is an unexpected file
  • breadsandcircuits-6wkw โ€” sling-breadsandcircuits-g0ry
  • breadsandcircuits-g0ry โ€” Feeder completion matcher treats dotted child ID as parent epic completion
  • breadsandcircuits-r7sg โ€” sling-breadsandcircuits-97nr
  • breadsandcircuits-97nr โ€” kernel-auditor DISAGREE note is headed 'PASS' with the SHA-pinned marker - the unarmed disposition is buried 130 lines down; the wrong-merge shape
  • breadsandcircuits-6u9j โ€” sling-breadsandcircuits-myvw
  • breadsandcircuits-myvw โ€” kernel-auditor rework re-sling half-lands: convoy created, no gc.routed_to/assignee written, logged as SUCCESS - stalls the whole rig behind the kernel slot
  • breadsandcircuits-2rdm โ€” Refinery runtime permissions block git fetch and GitLab verification
  • breadsandcircuits-x7v2 โ€” Refinery sandbox denies git fetch access to shared FETCH_HEAD
  • breadsandcircuits-ijno โ€” sling-breadsandcircuits-tdbw.7
  • breadsandcircuits-tdbw.7 โ€” E6: scripts/beats.py โ€” match.json + actions.jsonl -> beats.json (taxonomy v1), proposes segment boundaries for the Cut