Repository navigation
Description
Program
Finish moving the sandbox's remaining execution jobs to the laptop, per
the 2026-10-28 control-vs-execution classification
(hatch-personal: workspace/job-classification-2026-10-28.md). Control jobs
(~52: creators, sweeps, pr-diff, readouts, pool stewardship) stay on the
sandbox by design. Tier-1 queue shifts already execute on the laptop (only
their thin dispatchers sit on the sandbox — leaving them is deliberate).
Items
- agent-queue-worker (cron, 2h, pilot) — fold into the laptop shift
pattern. Trigger: the repo-queue pilot interim check (2026-10-28
17:25 CDT) verdict. Do not migrate mid-pilot. - cold-store-nightly-backup (daily) + cold-store-restore-drill
(monthly/quarterly) — Cloudflare D1/R2 data duties. Vehicle: laptop
systemd timers defined in the NixOS flake (the "all laptop services in
the flake" pass), following the pattern proven by supabase-backup
(script in ~/tools, timer, one verified run, then remove the sandbox
cron). Laptop prerequisites verified 2026-10-28: wrangler + node are
system packages there. - supabase-turso-coord-mirror (daily) — Supabase→Turso sync;
cloud-to-cloud. Same flake pass. Verified 2026-10-28: its tooling
(~/tools/turso-exec.py, supabase-exec.py, goal-workspace state) does
NOT depend on the retired ~/workspace/supabase tree. - OpenChamber session long tail — sessions that still land in sandbox
worktrees. Drains as the queue pilot concludes; no separate action.
Unlock condition (the point of the program)
When 1–4 are done and the snapshot-first control jobs (creators,
pr-diff-review, issue-sweep-rotating) are re-pointed from ~/git/fleet
snapshots to gh-API discovery or laptop-side snapshots, the sandbox fleet
clones + worktree farm can be deleted (preconditions verified 2026-10-28:
zettel clone has 1 unpushed commit, nix clone 1 dirty file, ~148
worktrees attached — resolve those first).
Done when
- agent-queue-worker dispositioned by the pilot verdict and, if the
pilot continues, running laptop-side - cold-store backup + drill running from laptop timers, one verified
run each, sandbox crons removed - coord-mirror running from the laptop, one verified sync, sandbox
cron removed - snapshot-first jobs re-pointed; sandbox fleet clones deleted
Acceptance criteria
- agent-queue-worker is dispositioned by the repo-queue pilot interim-check verdict (2026-10-28 17:25 CDT) and, if the pilot continues, runs laptop-side.
- cold-store-nightly-backup and the restore drill run from laptop timers with one verified run each; the sandbox crons are removed.
- supabase-turso-coord-mirror runs from the laptop with one verified sync; the sandbox cron is removed.
- Snapshot-first control jobs are re-pointed off the sandbox fleet clones, the clones' outstanding state (1 unpushed zettel commit, 1 dirty nix file, ~148 worktrees) is resolved, and the sandbox fleet clones are deleted.
Activity
developing-today commentedon Oct 28, 2026
CODE-693
dezren39 commentedon Oct 28, 2026
Intake review
workspace/job-classification-2026-10-28.mdin hatch-personal. Labelledmeta/epic— this is a program tracker, not a single fix.dezren39 commentedon Oct 28, 2026
Progress 2026-10-28 (same day, at Drew's direction to start immediately):
Remaining on this issue: item 1 disposition, item 4, and the snapshot re-pointing + clone deletion.
dezren39 commentedon Oct 28, 2026
Update 2026-10-28 ~11:50 CDT:
dezren39 commentedon Oct 28, 2026
Final state 2026-10-28 ~12:20 CDT — the laptop-service consolidation is code-complete:
dezren39 commentedon Oct 28, 2026
CLOSED OUT 2026-10-28 ~15:25 CDT — the consolidation is LIVE:
dezren39 commentedon Nov 3, 2026
agent-note:v1
state: triaged (coverage pass)
Coverage pass 2026-11-03: reviewed in the fleet-wide per-issue pass (drift / overlap / already-handled / stale / blockers / ordering). Verdict: still live; queued in repo-health-code-pilot as triage at priority 40 (priority/normal). If this is already handled at current main, the triage closes it with evidence; if it needs splitting, the triage files the split.
Found via: coverage pass 2026-11-03
dezren39 commentedon Nov 3, 2026
agent-note:v1
task: 7723
lane: code-h
stage: handed_off
execution_lane: opencode
Task 7723 (triage: #1723 — program to finish Tier-2 execution migration to the laptop) claimed by lane code-h at 2026-11-03T15:04Z; execution-lane assignment returned
opencodewith no session bound yet. Handing off to the opencode claimant per the worker runbook — this lane does not work the task directly. Claim labels synced on #1723 (work/assigned, queue/claimed, status/in-progress added; queue/queued and status/needs-triage removed).dezren39 commentedon Nov 3, 2026
Triage 2026-11-03 — program is live, narrowed to two Drew-gated remainders
Verified on the laptop (execution host) at ~2026-11-03 11:00 CST, against fresh state: the laptop's own systemd user units, the queue health readout, and the
hatch-personalcron registry snapshot (HEADf41f9d725, 2026-11-02 16:25 CST — the sandbox is the client side oflaptop-ssh.sh, so it cannot be inspected from here).Verdict: still live as a program tracker. No repo-side fix exists at current
developing-today/codemain —grepforpr-diff-review/issue-sweep-rotatingin the repo returns nothing; those control jobs and this program's remaining work live in thehatch-personalcron registry and on the sandbox, not here. Do not close.Item status
enabled: true,every: 2h, atworkspace/goals/supabase-muse-dev-platform-backups/crons/hourly/agent-queue-worker__interval@2h.md. It demonstrably still fires on the sandbox:memory/2026-11-02.mdlogs 05:43, 07:43 and 09:43 CST runs, each "claim_task returned all-null row — queue empty, no tasks worked this shift". Its source queue reads 0 queued / 16 done in today's queue health.cold-store-nightly.servicelast ran 2026-11-03 03:23 CST;cold-store-drill.servicelast ran 2026-11-01 05:21 CST, next 2026-12-01 (quarterly gate behaving).supabase-backup.servicelast ran 2026-11-03 04:45 CST. All three arelinkedhome-manager store symlinks — flake-owned, per the no-non-nix-services rule.supabase-mirrorortursounit exists on the laptop (Drew's 2026-10-28 call: mirror retired, script kept in~/tools/supabase-mirror/for a rebuild).Unlock condition — largely met, deletion not finished
memory/2026-11-02.md): the git-hygiene runbook scoped laptop-only; all five new-issue-creator lanes read laptop primaries vialaptop-sshorgh api; stewardship-cycle and cold-store-eviction-scan moved to the laptop;~/tools/fleet-fetch.py's local-clone machinery deleted (snapshots are gh-API only). Thepr-diff-reviewjob body now states "there are no sandbox clones (Drew, 2026-11-02)".~/gitcopies were moved to recoverable trash (restorable until 2026-12-02) after pushing their unpushed work. 8 trees were held, not discarded:devtoday-opencode-embeddings(~10 dirty files),wt-model-by-id,devtoday-opencode+devtoday-code(the mains the held worktrees hang off),wt-4111-fix,wt-1150-sim-bin,fleet,nix-cache,pm-feed. Final removal of that held set is the last piece of the unlock step.Blockers and ordering
agent-queue-workerneeds a disposition: retire it, or migrate it laptop-side. Recommendation: retire. Its queue has been empty for days, and the repo-queue lane fleet (11 shift lanes in the same registry, plus scheduled OpenChamber lanes) now covers the work it was created to do. Vehicle either way is ahatch-personalcron-registry edit plus the sandbox-side remove/disable — neither is possible from the laptop.Items 2, 3 and 4 need no further action; they can be ticked when someone next edits the Done-when list.