← back to Wallco Ai
needs-tif: empty-state banner when this box's DB is sparse (DTD verdict A) — kills the false 'all designs have TIFs' read on prod
167a7cbdf1b60564b2ad44e262bbad359af97f7f · 2026-06-02 09:49:12 -0700 · Steve Abrams
Files touched
M public/admin/needs-tif.html
Diff
commit 167a7cbdf1b60564b2ad44e262bbad359af97f7f
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Tue Jun 2 09:49:12 2026 -0700
needs-tif: empty-state banner when this box's DB is sparse (DTD verdict A) — kills the false 'all designs have TIFs' read on prod
---
public/admin/needs-tif.html | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/public/admin/needs-tif.html b/public/admin/needs-tif.html
index 04f1fd7..fb28362 100644
--- a/public/admin/needs-tif.html
+++ b/public/admin/needs-tif.html
@@ -46,6 +46,9 @@
.empty, .loading { color: #9a9182; padding: 40px; text-align: center; }
footer { color: #6f675b; font-size: 11px; padding: 0 24px 40px; }
.hint { color: #6f675b; font-size: 11px; margin-top: 8px; }
+ .sparse { display: none; margin: 8px 24px 0; padding: 12px 16px; background: #2a2114; border: 1px solid #5a4a22; border-radius: 9px; color: #e8d6a8; font-size: 13px; line-height: 1.55; }
+ .sparse b { color: #f0d488; }
+ .sparse code { background: #14110e; border: 1px solid #4a3f22; border-radius: 4px; padding: 1px 5px; font-size: 12px; }
kbd { background: #221d16; border: 1px solid #3a352c; border-radius: 4px; padding: 0 5px; font-size: 10px; }
</style>
</head>
@@ -72,6 +75,11 @@
<label><input type="checkbox" id="onlyfilter" style="accent-color:#d2b15c"> filter by group below</label>
</div>
<div class="groups" id="groups"></div>
+ <div class="sparse" id="sparse">
+ ⚠️ This box's Postgres <code>dw_unified</code> is sparse (it is <b>not</b> the catalog source), so the live grid is empty —
+ that does <b>not</b> mean every design has a print master. The real ~3,600-row NULL-tif backlog lives in <b>Mac2's</b> <code>dw_unified.all_designs</code>;
+ open <code>/admin/needs-tif</code> on the build box to work it.
+ </div>
<div class="hint">Drag across the grid to marquee-select (hold <kbd>⇧</kbd>/<kbd>⌘</kbd> to add to the current selection) · click a card's box to toggle · <kbd>⌘A</kbd> all · <kbd>Esc</kbd> clear</div>
</header>
<main>
@@ -294,6 +302,7 @@
ALL = j.items || [];
ALL.forEach(function (x) { var g = grp(x.category); groupCount[g] = (groupCount[g] || 0) + 1; });
totalEl.textContent = j.total + (j.total > ALL.length ? (' — showing newest ' + ALL.length) : '');
+ if (!j.total) document.getElementById('sparse').style.display = 'block';
renderGroups(j.by_group || []);
render();
})
← 9813b2a needs-tif: marquee drag-select (1→all) + Copy IDs/open-selec
·
back to Wallco Ai
·
deploy: exclude data/fix-decisions.jsonl (prod-authored scan d04f0a2 →