[object Object]

← back to Ventura Corridor

fix(generate_features): tighten banned-phrase regex to catch bare 'X Meets Y'

d4444350f7670a46fba529abefcddacb0da14293 · 2026-05-07 14:02:03 -0700 · Steve

Tick-29 review found 'Skincare Meets Socializing' slipped through — the
regex required a 'where' prefix before 'X meets Y', but the prompt's
NEVER list bans the bare form too. Updated BANNED_HEADLINE_RE to match
any '\w+ meets \w+' or '\w+ rooted in \w+' pattern, not just the
'where'-prefixed cliché.

Files touched

Diff

commit d4444350f7670a46fba529abefcddacb0da14293
Author: Steve <steve@designerwallcoverings.com>
Date:   Thu May 7 14:02:03 2026 -0700

    fix(generate_features): tighten banned-phrase regex to catch bare 'X Meets Y'
    
    Tick-29 review found 'Skincare Meets Socializing' slipped through — the
    regex required a 'where' prefix before 'X meets Y', but the prompt's
    NEVER list bans the bare form too. Updated BANNED_HEADLINE_RE to match
    any '\w+ meets \w+' or '\w+ rooted in \w+' pattern, not just the
    'where'-prefixed cliché.
---
 src/jobs/generate_features.ts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/jobs/generate_features.ts b/src/jobs/generate_features.ts
index 9bc427f..856b526 100644
--- a/src/jobs/generate_features.ts
+++ b/src/jobs/generate_features.ts
@@ -51,7 +51,7 @@ Rules:
 - Avoid superlatives ("the BEST"). Prefer concrete sensory details.
 - Output ONLY the JSON. No preamble, no markdown fences.`;
 
-const BANNED_HEADLINE_RE = /\b(multi[\s-]?tenant\s+building|shared\s+building|office\s+complex|where\s+\w+\s+meets\s+\w+|in\s+\w+'s\s+heart)\b/i;
+const BANNED_HEADLINE_RE = /\b(multi[\s-]?tenant\s+building|shared\s+building|office\s+complex|in\s+\w+'s\s+heart)\b|\b\w+\s+(meets|rooted\s+in)\s+\w+/i;
 
 async function generate(biz: any, model: string): Promise<any> {
   const baseUserPrompt = `Business: ${biz.name}

← 7594bb3 fix(security): escape source_url + scheme-validate href in /  ·  back to Ventura Corridor  ·  feat(news): news_count badge on /chains.html bar rows 4cada62 →