← back to Silkwallpaper
silkwallpaper: title-required silk filter — drop tag-only non-silk (bamboo/paper-weave) per Cody gate
4d53f67bd6b4c918da4a55d15155c12579fc50f7 · 2026-08-12 10:08:10 -0700 · steve
Files touched
Diff
commit 4d53f67bd6b4c918da4a55d15155c12579fc50f7
Author: steve <steve@designerwallcoverings.com>
Date: Wed Aug 12 10:08:10 2026 -0700
silkwallpaper: title-required silk filter — drop tag-only non-silk (bamboo/paper-weave) per Cody gate
---
server.js | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/server.js b/server.js
index 37db93d..33233e2 100644
--- a/server.js
+++ b/server.js
@@ -91,7 +91,11 @@ const NICHE_NEG = ["solid","blank","plain","grasscloth","grass cloth","sisal","s
function nicheFit(p) {
const blob = ((p.title || '') + ' ' + (p.tags || []).join(' ')).toLowerCase();
if (NICHE_NEG.some(n => blob.includes(n.toLowerCase()))) return false;
- return NICHE_POS.length === 0 || NICHE_POS.some(k => blob.includes(k.toLowerCase()));
+ // Title-required (matches linenwallpaper): silk signal must be in the product's NAME,
+ // not a stray tag — else a "silk"-tagged bamboo/paper-weave leaks onto a SILK site
+ // (Cody gate, verified 2026-08-12). Both silk sites stay healthy at 331.
+ const title = (p.title || '').toLowerCase();
+ return NICHE_POS.some(k => title.includes(k));
}
// Niche-filtered view of PRODUCTS — recomputed after the async catalog load.
let PRODUCTS_NICHE = [];
← 9672356 silkwallpaper: tighten niche filter — exclude competing-fibe
·
back to Silkwallpaper
·
chore: version bump v0.1.1 (session close — niche-filter fix 45ba155 →