Daily — 2026-08-03 (22 infra fixes landed, GCP backend removed, 0 results promoted)
What happened
- 22 tasks reached
epm:done— almost the whole 08-02 daily-fix batch landing at once (#1962–#1978 daily-fix, #1980/#1982 workflow-fix), plus #2032, #2050 (pgrep -funder-match), #2051 (pod bootstrap full-clones 10.5 GB) and #2057 (re-arm the bg poll chain first on every wake). 25epm:merged, 29epm:code-reviewrounds, 24 test-verdicts. Zeroblockedtransitions. - #2028 landed: GCP provisioning is now disabled fleet-wide (GPU and CPU, per your "remove GCP fully" directive). The auto chain is fellows → nibi/fir/mila with RunPod as the terminal rung;
cpu-bigmemnow maps to RunPodcpu5m-16-128. Everyeps-issue-*GCE instance reads TERMINATED. #2059 was filed the same day to consider going further (RunPod primary, fellows next). - 28 tasks created — 16 daily-fix items from last night's sweep, 10 workflow-fixes that sessions filed on themselves during the day (#2049–#2060: duplicate-named pods, keep-running shielding idle pods,
lane_suffixin SLURM job names, the no-progress tick wedge, bootstrap-failed pods billing), and 2 new experiments: #2054 (6k-row scaffold-and-splice lattice: framing × character × condition) and #2061 (does post-training make SAE features more predictable from context?). - 0 results promoted; 1 parked at
awaiting_promotion— #1336 (the Llama Tülu ladder's DPO→RLVR step needs at most a rotation of the linear map). Theawaiting_promotionqueue now stands at 126. - Live experiment lines: #1739 (evil-OOD arm-fill rounds — 128 markers, the day's busiest), #1482 (SAE Shapley / K-sweep), #1345 (character-capture pivot), #1689, #1947 (localization panel — two live RunPod boxes, 8×H200 + 4×H200), #1895. Cross-family review redundancy was OFF all day: the Codex quota sentinel is live until 2026-08-06, so every doubled review site ran single-Claude under the #1204 no-show fallback.
Applied workflow improvements
-
Target:
.claude/skills/issue-tick/SKILL.md— what: pin the canonical worktree-safeREPO_ROOTderivation — commit:24163612d0Why: the Step-0 tick recipe said to run"$REPO_ROOT"/scripts/tick_triage.pyfrom a worktree but never said how to deriveREPO_ROOT. The #1739 worktree session improvisedgit rev-parse --show-superproject-working-tree, which in a plain (non-submodule) worktree exits 0 with empty output — so the|| fallbacknever fires and the tick invoked/scripts/tick_triage.py, dyingNo such file or directory(2026-08-04T01:14:21Z). Verified: reproduced from the live issue-1739 worktree — superproject formrc=0 len=0, the||chain yields'', canonical form resolvesscripts/tick_triage.py. Canonical idiom already used atCLAUDE.md:124and 6 sites in.claude/skills/issue/SKILL.md. Applied edit:+ Derive `REPO_ROOT` with the canonical worktree-safe form ... — never improvise it: + REPO_ROOT=$(dirname "$(git rev-parse --path-format=absolute --git-common-dir)") + `git rev-parse --show-superproject-working-tree` is NOT a substitute: in a + plain (non-submodule) worktree it exits 0 with EMPTY output ... -
Target:
.claude/rules/gotchas.md— what: two probed tool traps (RunPod MCP team-scoping; destructive-verb bigram in commit-message prose) — commit:3311808aecWhy (a): themcp__runpod__*tools send noX-Team-Id, so they see a different personal-account inventory. Probed directly tonight: MCPlist-pods --computeType GPUreturned exactly 2 EXITED pods (pod-1112,pod-779) and none of the three podspod.py list-ephemeralreported that same minute — including two RUNNING H200 boxes. An idle/spend audit run through the MCP would have read "nothing live" while 12 GPUs billed. Alsomcp__runpod__delete-pod→500 delete pod: Unauthorizedon a team pod (#1482, 18:54:23Z). Why (b): a commit whose message prose carries the two-token destructive-verb bigram tripsguard_repo_root_branch.sh— the arm regex at L1698 anchors anywhere in the argv, and the-mpayload is on that argv. #1482 hit it at 23:22:18Z writing up an incident. Re-confirmed live while writing the entry: my own verification call carried the bigram in a quoted test string and was refused, and the deny killed the whole compound. This commit itself used the prescribed-F <file>form. Applied edit: two bullets appended to# Gotchas(RULE + incident citations, matching the file's register).
Lint gate after both: --check-references PASS, --check-asks PASS, --check-lessons-index PASS (with a pre-existing WARN — see notes).
- filed for review #2062: lean-context subagent twins — the autocompact-thrash ladder has no rung past orchestrator self-compose (~29 thrash deaths across six sessions in one evening; micro-scoped default-model respawn, the only prescribed remedy, failed repeatedly — 3 deaths on an 11-line diff, 4 at a 4-tool-use signature).
- filed for review #2063: judge
max_tokenspins sit below the rule-23 floor they cite — 15 pins inscripts/still at 300/400/600 after the 2026-08-02 raise to 1024/2048 (12ce0a8225), most citing rule 23 as their justification. Below-floor budgets truncation-censor draws arm-asymmetrically. (wf_fix: false— experiment scripts.) - filed for review #2064: registry drift at an allocated id breaks
task.py newfleet-wide —tasks/proposed/2052existed unregistered, the allocator re-issued 2052, and every filer in the fleet failed on a bareFileExistsError(0 handlers on that path). - filed for review #2065: flag dirty-tree provenance in result-JSON reproducibility metadata — this routes a candidate session 201e2896 wrote up and then parked for your greenlight instead of filing, which
workflow-fix-on-bug.mdexplicitly bans. Both #1482 Shapley runs consumed a script modified+369/−40, so committed figures record agit_committhat does not contain the logic that produced them. (Already dispatched — atplanning.) - filed for review #2066:
guard_root_code_commit.shis cwd-blind — worktree commits blocked by foreign files in the shared root index; ≥7 commits blocked across 5 unrelated sessions, each costing 2–4 turns. Cross-references open sibling #2046 (same file, pathspec case). - filed for review #2067: a cross-session lane pivot must resolve the owning session before provisioning — a #1345 pivot by a non-owning session left
pod-1345-charcapa(8×H200) idle 74+ min at 0% GPU (~$54) while the owner waited on the abandoned fellows queue. - filed for review #2068: forensics — a concurrent repo-root working-tree revert scoped to
eval_results/silently destroyed a completed 48-minute ridge run's JSON (#1482), despite the guard that refuses exactly that being verified armed and firing today. Evasion path unknown; that is the task. - filed for review #2069: on-policy datagen must persist judge-rejected generations — #1689 ships only kept rows, so inspecting rejects required a full regeneration, contradicting persist-by-default (rollout text is never discardable) and destroying the rules 9/23 audit trail.
- filed (needs-human) #2070: the 61-deep auto-dispatchable infra queue is now the binding constraint — see notes.
Dispatch state of tonight's filings: #2065 dispatched (at planning); #2062/#2063/#2064/#2066/#2067/#2068/#2069 are dispatch pending at proposed — the filer's spawn no-op'd on the session-dispatch stagger / cap, so the watcher's proposed_infra_sweep backstop owns them (see logs/daily/filings-2026-08-03/filed.jsonl). #2070 is deliberately --no-dispatch (route 3, needs-human). That 7-of-9 deferral is itself the condition #2070 asks you to decide about.
Other problems & notes
- Route-3 held (needs you) — #2070, infra dispatch backlog. 93
proposedtasks, 87kind: infra, 61 auto-dispatchable behind a 5-session cap with 36 live sessions. Concrete cost: #2022 (a one-linetests/sparse_cones.txtfix whose absence reds fresh sparse worktrees' Step 9c at collection) was filed 2026-08-02T17:55:48Z and has never dispatched — oneepm:createdevent, ~30h — and the same bug re-bit twice since. #2006 (idle-pod teardown) likewise sitsproposedwhile that leak recurred again tonight. Not a bug (#1853 already fixed the sweep mechanism and is closed) — a resource/priority call: raise the cap, prune, priority-order by severity, or tighten /daily's route-2 bar. Immediate ask: dispatch #2022 by hand. - Route-3 held (needs you) — already tracked in #1686 (shared: draft, root, scripts, shared, unrelated, untracked; anchor: root): six untracked draft scripts squatting at the shared repo root (
issue1482_*×4,issue1895_overlap_ksweep_fig.py,issue1768_result2_ladder.py). Duplicate filing suppressed by the #1483 overlap dedup; I posted a freshness note on #1686 instead, recording that the set has grown, that it now blocks commits fleet-wide (not just degrading the Step-9c oracle as originally filed), and thatissue1482_shapley_blocks.pyshould be committed rather than deleted because its uncommitted diff is what produced #1482's figures. Deleting untracked files is notgit revert-able, so /daily may not self-apply. - Step C parked-candidate sweep: 3 candidates enumerated, all dispositioned. (a) #1965's
tests/sparse_cones.txtpark → deduped against open #2022, routed-record posted on #1965 with the ~30h non-dispatch escalation. (b) #1968's park targets~/.claude/skills/converge/SKILL.md— user-global, out of /daily's surface by definition (global files are/memory-sleep's remit, and a route-2/issueworktree merge cannot land a file outside the repo); routed-record posted on #1968 with the misclassification note so the emitting pattern gets corrected. The substance is sound and small — mirror the #1968 storm-liveness hold into that skill's L682 bare-429-retry instruction — and belongs to the next/memory-sleep. (c) #1771's architectural-greenlight mechanization park → deferred again, 7th consecutive night: #1771 itself is stillplan_pendingrewriting that exact gate, so the "target under active change" deferral still holds. No suppressing routed-record posted (that would bury a genuinely pending re-consideration). 1 benign skipped row (#1333 json-decode,relevant_kind: false);unmatched_record_fps326 refs — the standing #1703 advisory backlog, unchanged in character (326 yesterday too). - Retraction re-check: 3 marker-mined parked candidates scanned (fresh events-tail read per park), 0 retracted upstream. Transcript-mined filings inherited the miners' full-session tail reads; two premises were re-scoped before filing — the guard-cwd finding was narrowed once #2046 was read (pathspec case ≠ cwd-blind case), and the infra-backlog item was reframed after reading #1853 (mechanism already fixed; the residue is a resource call).
- Landed-fix / sibling suspects overridden after eyeballing (2, both false positives of the #1735 generic-vocabulary class):
guard-root-commit-cwd-blindvs commit638093ec4f(that commit is the #1857 cert-retry settle-and-re-hash pass — it changes which content gets hashed, not the Layer-2 root-index read; shared tokens were1620,guard,hook);persist-rejected-judge-drawsvs #2020 (the on-policy yield-floor close-miss escalation — 0 mentions of "reject" or "persist"; shared tokenon-policy+ same target file). - #1739 lost ~7.8h to a refusal-then-context wedge and the watcher did not respawn it. Session b0db8707: 17
isApiErrorMessagerows 10:27–18:16Z — 8 usage-policy refusals ("violative cyber content"), 8 "Prompt is too long", 1× 529 — every/issue-tickwake dying in an api-error row, recovery only via harness autocompact at 18:16. A second #1739 session (9e7a6e7e) died the same way at 00:47:19Z when a STALE-REDRIVE reloaded the 44K-token SKILL.md. The prompt-wedge lane (EPM_TICK_WEDGE_MIN_FAILED_TURNS, #1127/#1453) should have force-respawned after ≥3 consecutive failed wake turns; 16 accumulated. Not filed — #2058 (approved, no-progress tick wedge) is landing in this exact area and may or may not cover the api-error-wake path; worth confirming when it merges rather than filing a possible duplicate into a 61-deep queue. Contributing cause on the refusal side: #1739's own round labels ("evil-ood-spread-round") ride into every tick-visible surface, the trigger-dense-by-reference discipline this line keeps re-learning. - Two money leaks that you spotted before the fleet did. (a) Two orphan bare-named
pod-1739duplicates idled 29.2h and 15.6h at ~187, 0% GPU, empty logs) — the issue-widekeep-runningtag shielded them from every watcher auto-stop and the provisioning call appears in no surviving record; you asked "are you running something here". (b)pod-1947-loc(4×H100) sat RUNNING after a failed bootstrap ~25 min until you asked "is this bugging" then "can you fix workflow so this doesn't happen again" — filed same-minute as #2060. Both already routed (#2049 duplicate-named pods, #2052 keep-running shielding idle pods, #2060 bootstrap-failed teardown), all three stillproposed. - Repeated user re-steers worth naming, all recovered in-session. #1482: the full-dictionary width had to be re-pinned 4 times after the first directive ("ONLY DO THE FULL 128512" → later sub-analyses defaulted back to the 16k panel). #1739: a build-unit script never set
mapfit, silently skipping arms 6/7/8/13 — you caught it and asked for the fix and a guard against recurrence (landed702e0c3535, 26/26 mapped tests); separately my arm-count and coverage claims were wrong in both directions twice, and two rounds of "never ran OOD" claims were refuted by artifacts in sibling directories. #1895: cross-space R² presented as a head-to-head before target-matching, 4 pushbacks, and you supplied the fix. #1491: you said n=10k and the plan was unilaterally switched to n=25k without a confirm. #1345: a writeup ignored the literal skeleton you handed it. Wall-time was never volunteered at dispatch (6 "how long will this take" asks in one session) and parallelization had to be requested 3 times. - Guard-block compliance ledger (hooks all worked; these are wasted turns, not gaps). Piped
git push/commit/gh pr createblocked ~17 times across ~12 sessions; foregroundsleepchains ~9; uncertified root-code commits ~13; repo-root branch/destructive ops ~5; bare| python -c1. Every one recovered on the next call. Three guard false-positives are worth a fix if they recur: an SSH-remote pod-sidegit checkout/reset --hardblocked by argv text-matching (#1345), a worktree-cwdgit pull --rebaseblocked the same way (#1491), and the commit-message bigram now documented in gotchas. .claude/rules/LESSONS.mdis at 7564/8000 bytes — inside the WARN band (>7200). The next rule addition may FAIL the lessons-index check; largest row isgotchas(1170 B). Not caused by tonight's edits (I did not touch LESSONS.md — the two gotchas bullets went into the rule file, not the index). Needs a slim pass or a deliberate cap decision soon.pod-1739has been STOPPED for 2 days while #1739 is atfollowups_runningwith thekeep-runningtag set — a STOPPED volume is not durable (#1112), so anything only on that volume is at risk. The stale-pod audit reports it askept-exited(tag-exempted) rather than reaping it.- Smaller recurrences, each recovered:
TaskOutputkeyed on a teammate name instead of the spawn task-id (3 sessions — documented anti-pattern);Skill("happy:change_title")for what is an MCP tool; unscoped HF full-tree listings wedging twice before switching tolist_repo_tree; a Step-9c pytest launched as bg-Bash with a 5700s timeout silently clamped to the 600s cap and SIGTERM'd at 92%; a Step 10d lint-gate background job vanishing with no verdict file (Monitor waited 30 min on silence — an EXIT-trap verdict write would fix it); 4 duplicate/issuesessions correctly detect-and-exited at the Step 0 guard; one/issue 2053spawn against an already-archivedtask.
Living-docs drift
living_docs.py check: FAIL — 199 findings (legacyrelates_toanchors, evidence-list mismatches, completed-results-missing-from-evidence). Normalized hash078285c14444— identical to the 07-07/07-22..07-28/08-01/08-02 rows and materially the same drift as the open 06-29/07-04/07-06/07-07 re-synthesis proposals.- drift proposal already open (logged 2026-06-29 → 2026-08-02); not re-proposing. Event row appended to
.claude/cache/nightly-consolidation-events.jsonl. - Parked-proposal pass (Step B): #713's
epm:living-docs-update-rejectedremains un-reconciled with no new context bearing on it (skipped, no spam); noon_holdtask carriesepm:followup-parked-redundantprovenance — no revival candidates. - Title-sync sweep (Step D): title-sync drift unchanged (8 rows: #432 #458 #654 #658 #664 #665 #763 #1226 — see
logs/daily/2026-07-25.md). Read-only sweep exited 0.
My thoughts
Highlighted results
- no results promoted today