← back to Stars of Design
promote-candidates: harden — restore 'status=new' filter; document why blanket is_designer promote is unsafe (LLM mis-labels Shopify/Twitter/vendor reps as designers)
e00c483996a9c07f08f768d8701c0be90ea88b8f · 2026-05-12 15:58:28 -0700 · Steve Abrams
Files touched
M scrapers/promote-candidates.js
Diff
commit e00c483996a9c07f08f768d8701c0be90ea88b8f
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Tue May 12 15:58:28 2026 -0700
promote-candidates: harden — restore 'status=new' filter; document why blanket is_designer promote is unsafe (LLM mis-labels Shopify/Twitter/vendor reps as designers)
---
scrapers/promote-candidates.js | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/scrapers/promote-candidates.js b/scrapers/promote-candidates.js
index cf9d44e..22c6d26 100644
--- a/scrapers/promote-candidates.js
+++ b/scrapers/promote-candidates.js
@@ -49,7 +49,19 @@ function guessNameAndFirm(displayName, domain) {
async function main() {
let params, where;
if (ONLY_EMAIL) { params = [ONLY_EMAIL]; where = `email = $1`; }
- else { params = [MIN_SCORE]; where = `status='new' AND signal_score >= $1`; }
+ else {
+ // INTENTIONALLY restrictive: only promote rows whose status is the
+ // original 'new' lifecycle state. The sig-extract pipeline repurposes
+ // `status` for an LLM triage label (is_designer / is_vendor /
+ // is_noise), and the LLM is wrong often enough — Shopify/Twitter/TikTok
+ // transactional senders, manufacturer reps, and our own outbound have
+ // all been mis-labeled is_designer in past runs — that we don't trust
+ // it as a promotion signal. To bulk-promote is_designer rows safely,
+ // build a separate audit script (curated allow-list, not a block-list)
+ // and run it with explicit --email targets.
+ params = [MIN_SCORE];
+ where = `status='new' AND signal_score >= $1`;
+ }
const r = await pool.query(
`SELECT * FROM sod_email_candidates WHERE ${where} ORDER BY signal_score DESC NULLS LAST`,
params
← cca9c68 starsofdesign: +40 firms (20 arch, 20 interior) — Selldorf,
·
back to Stars of Design
·
starsofdesign: seed data/vendor-domains.txt (~80 lines) — ve 346478c →