← back to Wallco Ai
TODO: log overnight seam-fix runner launch (3-root manifest, DTD-gated, self-gating)
61d91dd982ea1d765acf37650e982c1e75f2ef64 · 2026-06-11 19:05:13 -0700 · Steve Abrams
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Files touched
Diff
commit 61d91dd982ea1d765acf37650e982c1e75f2ef64
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Thu Jun 11 19:05:13 2026 -0700
TODO: log overnight seam-fix runner launch (3-root manifest, DTD-gated, self-gating)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
---
TODO.md | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/TODO.md b/TODO.md
index 884e609..6b3c436 100644
--- a/TODO.md
+++ b/TODO.md
@@ -124,3 +124,12 @@ up unchecked rows automatically.
- [x] Root cause (conclusive across 3 trials, 24+ attempts): in BOTH roots the animal is a MINORITY structure entangled with dominant glassware (wine-glass rim / champagne coupes); the detail-density focal crop lands on GLASS, so the canny anchor imports glassware, not the animal.
- [x] Added Gemini/llava subject-recovery gate to the loop (Gemini is 429 over monthly spend-cap → routed to FREE local llava; verified elephant=yes, subjectless-glassware=no). DTD verdict A (3/3) said drop canny → text-led: tested, FAILED — pure text-led produced busy/dense (40-63% cov) edge-FAILING tiles, 0/12 cleared (canny was also holding openness+wrap). Synthesis weak-canny + subject-gate: canny gives clean PASS-both-axes tiles (54076 PASS/23%, 54266 PASS/18%) but the subject-gate correctly REJECTS every one (no animal) → both STOP at the 6-retry cap with **0 rows inserted** (orphan-min held; max id still 10000017).
- [ ] **STEVE — DECISION: both roots are structurally unrecoverable by this pipeline.** The canny crop region in 54076/54266 contains glassware, not the animal, so no clean-seamless roll ever has a recognizable subject; dropping canny loses the wrap+openness. Eyeball **/tmp/cnar_reroll_2.png**. Options: (A) accept 10000016/10000017 as clean-but-subjectless wallpaper (NOT what you asked); (B) hand-author an animal reference for these two (img2img/IPAdapter on a clean elephant-style motif, ignore the glassware root entirely); (C) retire 54076/54266 from the seam-fix redo set — the architecture is proven on animal-forward roots (elephant 54610=PASS), it just can't rescue a root where the animal was never the dominant structure. Did NOT ship a WARN, did NOT expand scope, did NOT double the orphan rows (0 inserts this session beyond the first 2).
+
+## OVERNIGHT SEAM-FIX RUNNER (2026-06-11, launched ~19:04 PDT) — autonomous, DTD-gated, NOTHING publishes
+- [x] Built scripts/overnight-seam-loop.sh — detached overnight runner that drives scripts/seam-wave.sh wave-by-wave all night, with DTD (codex+qwen+rule-vote, majority, ties fail-safe PAUSE) as the CONTINUE/PAUSE decider between waves. bash-3.2 compatible. Commits f1efeda (loop) + 81fefac (single-log-sink fix).
+- [x] SAFETY: nothing publishes (only is_published=FALSE candidates via the gated seam-wave.sh); never touches settlement/deploy/push; roots sacred (generator INSERTs new id, parent=root). DATABASE_URL self-resolves inside the generator; loop never echoes secrets.
+- [x] SELF-GATING (no Wave-1 collision): waits — never runs a wave — until (manifest populated) AND (generator present) AND (ComfyUI idle). At launch ComfyUI was busy with Wave-1's own job, so the loop is correctly HOLDING OFF; it fires the first real wave when ComfyUI goes idle.
+- [x] 5 STOP CONDITIONS: (a) 07:00 PDT 2026-06-12 (epoch 1781272800); (b) manifest exhausted (0 remaining); (c) kill switch /tmp/seam-overnight.STOP; (d) DTD votes PAUSE; (e) 3 consecutive zero-PASS waves.
+- [x] PASS rate computed from data/seam-fix-queue.jsonl records in each wave's time window (edge_seamless==true || edge_verdict=="PASS" / distinct roots attempted). CNCP heartbeat per wave (best-effort; CNCP was down at launch — ignored).
+- [x] Manifest = 3 roots (43199, 54385, 55272) = 1 wave at WAVE_SIZE=20. Generator = scripts/controlnet-anchored-reroll-2.py. Logfile /tmp/seam-overnight.log. PID in /tmp/seam-overnight.pid. Reparented to launchd (PID 1) — survives the launching session.
+- [ ] **STEVE (morning):** read /tmp/seam-overnight.log — total waves, total PASS candidates added, why it stopped. Then curate the new is_published=FALSE candidates in the seam-fix curator (http://127.0.0.1:9905/seam-fix-curator.html). Kill switch any time: touch /tmp/seam-overnight.STOP.
← 81fefac overnight-seam-loop: single log sink (drop tee, launcher >>
·
back to Wallco Ai
·
Add seam-warn recovery + animal-forward filter helpers (DTD- 41f6dfc →