← back to Designerwallcoverings
google-feed: exclude showroom-tagged products via isShowroomProduct (TK-11307)
bddd4d7557570c17e0b1cf7574cb95a159d4a95d · 2026-09-08 15:37:35 -0700 · steve
Hard-exclude any product with the 'Showroom' tag from the controlled Google feed,
not just showroom VENDORS. Covers MDC (shared 'Phillipe Romano' label) while
leaving that vendor's sellable lines (1048 Google-eligible) in the feed.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JDeaFL4eeREBZX79tc4cnr
Files touched
M scripts/google-feed/feed-eligibility.mjs
Diff
commit bddd4d7557570c17e0b1cf7574cb95a159d4a95d
Author: steve <steve@designerwallcoverings.com>
Date: Tue Sep 8 15:37:35 2026 -0700
google-feed: exclude showroom-tagged products via isShowroomProduct (TK-11307)
Hard-exclude any product with the 'Showroom' tag from the controlled Google feed,
not just showroom VENDORS. Covers MDC (shared 'Phillipe Romano' label) while
leaving that vendor's sellable lines (1048 Google-eligible) in the feed.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JDeaFL4eeREBZX79tc4cnr
---
scripts/google-feed/feed-eligibility.mjs | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/scripts/google-feed/feed-eligibility.mjs b/scripts/google-feed/feed-eligibility.mjs
index 4623b18..12befe0 100644
--- a/scripts/google-feed/feed-eligibility.mjs
+++ b/scripts/google-feed/feed-eligibility.mjs
@@ -25,7 +25,7 @@ import { createRequire } from 'node:module';
// Canonical showroom-vendor primitive (list + logic live in fix-live-board/config).
// Never hardcode a vendor name here — edit showroom-vendors.json to change the set. TK-11186.
const require = createRequire(import.meta.url);
-const { isShowroomVendor } = require(process.env.HOME + '/Projects/fix-live-board/config/showroom-vendor.cjs');
+const { isShowroomVendor, isShowroomProduct } = require(process.env.HOME + '/Projects/fix-live-board/config/showroom-vendor.cjs');
const SHOP = 'designer-laboratory-sandbox.myshopify.com';
const VER = '2024-10';
@@ -146,7 +146,11 @@ function evaluate(p) {
// quote_only above: PJ is sample-only ($4.25) today so it's excluded incidentally, but a
// future >$5 or roll-priced PJ variant would otherwise leak into the feed (disapproval
// risk). Keyed off showroom-vendors.json via the shared primitive. TK-11186.
- if (isShowroomVendor(p.vendor)) reasons.push('showroom_only_addressable_not_discoverable');
+ // TK-11307: switched to isShowroomProduct so a SHARED-vendor showroom line (MDC under
+ // "Phillipe Romano") is excluded via its product-level "Showroom" tag WITHOUT excluding
+ // that vendor's sellable products (Spazzolato/Greenland/RIGO/Justin David). p.tags is
+ // already selected by QUERY above, so the tag path resolves correctly.
+ if (isShowroomProduct(p)) reasons.push('showroom_only_addressable_not_discoverable');
if (!hasImg) reasons.push('no_image');
if (rollPrice == null) reasons.push('no_roll_variant_price');
else if (rollPrice < FLOOR) reasons.push(`roll_price_below_floor_${rollPrice}`);
← 2ff8ec3 auto-data-snapshot: 2026-09-08T15:35:04 (2 data files) — scr
·
back to Designerwallcoverings
·
rotators: exclude showroom-tagged products from New Arrivals 740956f →