[object Object]

← back to Healthcarewallpaper

wire api-vendor-redact middleware as first app.use — scrubs vendor/vendors from /api/* responses fleet-wide

68c30ea4b335bb3e996d235609033cab0bbe752b · 2026-05-25 21:08:47 -0700 · Steve Abrams

Files touched

Diff

commit 68c30ea4b335bb3e996d235609033cab0bbe752b
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Mon May 25 21:08:47 2026 -0700

    wire api-vendor-redact middleware as first app.use — scrubs vendor/vendors from /api/* responses fleet-wide
---
 server.js | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/server.js b/server.js
index 816e463..75e5d1c 100644
--- a/server.js
+++ b/server.js
@@ -138,6 +138,14 @@ function sortProducts(list, mode) {
 }
 
 
+// Fleet-wide vendor redaction — MUST be the first app.use so every /api/*
+// response is walked and any `vendor`/`vendors` field is scrubbed before it
+// reaches the client. Enforces standing rule: vendor names never in
+// customer-facing UI. Gracefully no-ops if the shared module isn't on disk
+// (e.g. on prod where _shared/ may not be deployed).
+try { app.use(require('../_shared/api-vendor-redact')); } catch (e) {
+  console.warn(`[${__SITE}] api-vendor-redact unavailable (${e.message}) — HTML scrub is the only defense`);
+}
 app.use(helmet({ contentSecurityPolicy: false }));
 app.use(express.json({ limit: '256kb' }));
 // Defense-in-depth 404 guard: snapshot files (*.bak, *.bak.*, *.pre-*, *.orig)

← 8c74f6a scrub p.vendor render from Ideas rail + add noreferrer to fb  ·  back to Healthcarewallpaper  ·  rails: editorial labels for firing aesthetic buckets e19a6c9 →