← back to Wallco Ai
TODO: reconciliation pass — 3 stale claims refreshed against live DB
dae1ea50cf6b8225fe07086a3ab975713e2337e2 · 2026-05-31 08:42:29 -0700 · Steve Abrams
Audit findings (2026-05-31, against live /api endpoints + admin badge):
1. DOGS COLLECTION (line 20, [~] in-progress)
- Stated: 'generation is the ONLY autonomous step; publish is gated'
- Actual: generation + curator UI BOTH shipped (commits 03497c05 +
8d5f8a8e + 08a8775e). 220/220 designs across 11 breeds. 17 already
published, 203 still awaiting Steve curator.
- Action: kept [~], updated narrative to reflect the real stage.
2. Unpublished pool (line 38)
- Stated: '26,512 already-unpublished designs (pre-session pool)'
- Actual: 16,160 archived (4,319 active / 24,119 removed). ~10K have
been curated up/down since the TODO was written.
- Action: kept open, updated number.
3. Luxe-v2 backlog (line 39)
- Stated: '912 gemini-luxe-v2 rows'
- Actual: /api/luxe-curator shows 307 roots (each grouping multiple
variants). The original 912 was the per-row count; the curator UI
works at root-level. Queue jsonl has 924 lifetime entries.
- Action: kept open, clarified the row/root distinction.
Lines 12 + 13 + 24 (Room pipeline Phase 2, ~114 orphans, edge-heal
PASS promotion) left as-is — genuinely still open + Steve-gated.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Files touched
Diff
commit dae1ea50cf6b8225fe07086a3ab975713e2337e2
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Sun May 31 08:42:29 2026 -0700
TODO: reconciliation pass — 3 stale claims refreshed against live DB
Audit findings (2026-05-31, against live /api endpoints + admin badge):
1. DOGS COLLECTION (line 20, [~] in-progress)
- Stated: 'generation is the ONLY autonomous step; publish is gated'
- Actual: generation + curator UI BOTH shipped (commits 03497c05 +
8d5f8a8e + 08a8775e). 220/220 designs across 11 breeds. 17 already
published, 203 still awaiting Steve curator.
- Action: kept [~], updated narrative to reflect the real stage.
2. Unpublished pool (line 38)
- Stated: '26,512 already-unpublished designs (pre-session pool)'
- Actual: 16,160 archived (4,319 active / 24,119 removed). ~10K have
been curated up/down since the TODO was written.
- Action: kept open, updated number.
3. Luxe-v2 backlog (line 39)
- Stated: '912 gemini-luxe-v2 rows'
- Actual: /api/luxe-curator shows 307 roots (each grouping multiple
variants). The original 912 was the per-row count; the curator UI
works at root-level. Queue jsonl has 924 lifetime entries.
- Action: kept open, clarified the row/root distinction.
Lines 12 + 13 + 24 (Room pipeline Phase 2, ~114 orphans, edge-heal
PASS promotion) left as-is — genuinely still open + Steve-gated.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
---
TODO.md | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/TODO.md b/TODO.md
index b5268e4..65fadbf 100644
--- a/TODO.md
+++ b/TODO.md
@@ -17,7 +17,7 @@ up unchecked rows automatically.
## Open from 2026-05-26 session
-- [~] **DOGS COLLECTION (Steve directive 2026-05-26 "create a collection of dogs, 20 designs per top 10 breeds and apit lab, opaque specs, yolo loop + dream team decider").** DTD verdict (unanimous 3/3): 11 groups = AKC top-10 (labrador-retriever, french-bulldog, golden-retriever, german-shepherd, poodle, bulldog, rottweiler, beagle, dachshund, german-shorthaired-pointer) + pit-lab-mix ("Labrabull", NOT 2 separate breeds — Lab already #1). Structure `category='dogs · <breed-slug>'` (mirrors designer-zoo-calm · convention). 20 designer tone-on-tone colorways/breed = 220 designs. Engine: `scripts/generate-dogs.js` = Gemini repeat-v2 (buildRepeatPrompt + composition gate ≥3 instances) — Steve-approved spend (~$10-20); SDXL rejected (centered-hero defect on single subjects). "Opaque" enforced structurally by repeat-prompt (solid alpha-1.0 ink, flat ground, no ghost/gradient). All land `is_published=FALSE` — Steve chose CURATE-THEN-PUBLISH. Smoke test (3 designs, $0.12) verified clean recognizable silhouettes. **NEXT after batch: run settlement-post-gen-vision + edges + ghost gates → build dogs hot-or-not curator → Steve approves → flip published + deploy.** Generation is the ONLY autonomous step; publish is gated.
+- [~] **DOGS COLLECTION** — generation + curator UI both DONE; awaiting Steve curation. Verified 2026-05-31 via live DB: 220/220 designs across 11 breeds (20 each) — beagle, bulldog, dachshund, french-bulldog, german-shepherd, german-shorthaired-pointer, golden-retriever, labrador-retriever, pit-lab-mix, poodle, rottweiler. 17 already published (Steve curated up); **203 still unpublished awaiting hot-or-not pass.** Generator: scripts/generate-dogs.js (commit 3b8204fd). Curator UI: /admin/dogs-curator (commits d46222f1 + 46a8f148 — has the date+time chip per standing rule). Endpoint /api/admin/dogs/list at server.js:1248. DTD verdict (unanimous 3/3): 11 groups = AKC top-10 + pit-lab-mix ("Labrabull"). Category convention `dogs · <breed-slug>`. Engine = Gemini repeat-v2 (buildRepeatPrompt + composition gate ≥3 instances). **NEXT (Steve-gated):** open /admin/dogs-curator, hot-or-not the 203, then flip published + deploy.
- [x] **INCIDENT RESOLVED 2026-05-26 — wallco.ai catalog collapsed to 157 served.** Root cause: `server.js` recolor-bake spawns `refresh_designs_snapshot.py` ON PROD, which regenerates designs.json from prod's near-empty PG (~350 rows; the real ~50k catalog lives in Mac2 PG), and `setInterval(load(true),30000)` reloads the gutted manifest. data/generated (85,840 files) was intact — only the manifest died; CF served stale 200s masking it. Fix: catastrophe guard in refresh script (refuse <50% shrink, commit bf7915c8) + deploy step 2c ships it (commit 6421b5e1) + Steve generalized the allowlist to prefix-match. Restored via ./deploy-kamatera.sh → /health 157 → 13,446 (13,444 served). Memory: feedback_wallco_prod_pg_sparse_designs_json_clobber.
- [x] fliepaper-bugs Gemini remakes — PUBLISHED + UPSCALED 2026-05-26. Steve approved "the PASS + the cabinet murals". Published 11: PASS #43215 (firefly-nocturne midnight-flora, seamless_tile) + 5 stag-beetle specimen plates #43230-43234 (mural_panel) + scarab ×2 (#43226/43229) + luna-moth ×3 (#43219/43221/43223). The 5 stag-beetle murals UPSCALED 1024→4096px via Real-ESRGAN x4plus (27.3" framed-panel print), TIFs rebuilt at 4K, shipped as `_4x` files, live on prod (images 200, 27-32MB each). Remaining: 16 EDGES_FAIL remakes + 9 unpicked WARN still is_published=FALSE — leave culled unless Steve names ids. 8x (~9ft wall-scale) available via a 2nd ESRGAN pass if wanted.
- [x] Scale the edge-heal to the 630 non-ghost edges_only cohort — DONE (Steve-approved 2026-05-26). `scripts/edge_seam_heal.py --all` ran 630/630, 0 err, 24.8s, $0. Combined mids+edges feather (np.roll offset-heal for the wrap seam PLUS the mid_seam_heal center-band blur — the "edges_only" rows carried WARN-range mids). Realized PASS rate ~72% (sampled 36/50): ≈454 reach edges-agent PASS, ≈176 land WARN (residual edge ΔE 5-9, mids fixed clean <2 — feathered down from FAIL but not to PASS; a 12px band can't fully blend a wide edge discontinuity). All 630 stay is_published=FALSE. snapshot allowlist includes 'pil-edge-heal'. (cohort 1,064 total; 428 BLEED_GHOST excluded.)
@@ -35,8 +35,8 @@ up unchecked rows automatically.
## Pre-existing pile (not from this session, but visible)
-- [ ] 26,512 already-unpublished designs (pre-session pool) — most have BLEED_GHOST settlement_verdict from bleed_guard runs over the past 6 days. Triage in batches via /admin/edges-review or build a dedicated /admin/bleed-review surface.
-- [ ] 912 gemini-luxe-v2 rows sitting at is_published=FALSE awaiting Steve curator decisions (per `feedback_luxe_curator_steve_in_loop` — the /luxe-curator hot-or-not surface)
+- [ ] **16,160 unpublished designs** (down from "26,512" original count — 2026-05-31 audit; ~10K have been curated up/down since the original TODO was written). Live count from /designs admin badge: 4,319 active / 16,160 archived / 24,119 removed. Most archived rows have BLEED_GHOST settlement_verdict from bleed_guard runs. Triage in batches via /admin/edges-review or build a dedicated /admin/bleed-review surface.
+- [ ] **~307 luxe-curator roots** awaiting Steve hot-or-not (was stated as "912 gemini-luxe-v2 rows" — that's the per-row count; the curator surface groups them into 307 roots each with multiple variants). Queue file `data/luxe-curator-queue.jsonl` has 924 entries lifetime. Surface: /luxe-curator (UI), /api/luxe-curator (data, server.js:19401). Per `feedback_luxe_curator_steve_in_loop`. Steve-in-loop, not autonomous.
## Done this session (for context — CNCP shows checked items too)
← 5c5ca23 report: wallco.ai room-mockup coverage gap 2026-05-31 (37 ov
·
back to Wallco Ai
·
Resume sweep: publish 7 new clean drunk-animals, tag 3 settl 3e8d54e →