[object Object]

← back to Marketing Command Center

Guard: suppress amplify controls for never-front-facing brands (Schumacher) on #vendors panel

3b784fd4a687120e13a550b183cc252ff354371e · 2026-08-25 10:12:13 -0700 · Steve Abrams

Files touched

Diff

commit 3b784fd4a687120e13a550b183cc252ff354371e
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Tue Aug 25 10:12:13 2026 -0700

    Guard: suppress amplify controls for never-front-facing brands (Schumacher) on #vendors panel
---
 public/panels/vendors.js | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/public/panels/vendors.js b/public/panels/vendors.js
index fb27e7d..4b7dd5a 100644
--- a/public/panels/vendors.js
+++ b/public/panels/vendors.js
@@ -174,6 +174,11 @@ window.MCC_PANELS['vendors'] = {
       if (r.posts && r.posts.length) {
         const brand = r.brand || r.handle || '';
         const handle = (r.handle || '').replace(/^@/, '');
+        // Never-front-facing brands (standing brand policy): must NOT appear on any
+        // customer-facing / marketing / SHARE surface. Amplifying their posts to DW's
+        // public X/IG would leak them, so the amplify + account controls are suppressed
+        // and replaced with an internal-only note. Extend this list as policy dictates.
+        const restricted = /\bschumacher\b/i.test(brand);
         const items = r.posts.slice(0, 3).map(p => {
           const cap = esc((p.caption || '').replace(/\s+/g, ' ').slice(0, 120)) || '(no caption)';
           const when = p.timestamp ? p.timestamp.slice(0, 10) : '';
@@ -193,7 +198,9 @@ window.MCC_PANELS['vendors'] = {
           // amp-row is a SIBLING of the anchor (never nested inside the <a>), so the
           // trigger buttons don't fire navigation. The "Post from" button carries a
           // live count badge; "Make unique" opens the review area below.
-          const ampRow = `<div class="amp-row">
+          const ampRow = restricted
+            ? `<div class="amp-row amp-restricted"><span class="amp-note" title="Brand policy: this line must not appear on any customer-facing / marketing / share surface. Internal reporting only.">🔒 Internal only — do not amplify</span></div>`
+            : `<div class="amp-row">
             <button type="button" class="amp-btn amp-from" data-amp="from" data-amp-id="${id}" aria-haspopup="true" aria-expanded="false" title="Choose which owned DW accounts this post is for">Post from ▾${selCount ? ` <span class="amp-count">· ${selCount}</span>` : ''}</button>
             <button type="button" class="amp-btn amp-uniq" data-amp="unique" data-amp-id="${id}" title="Generate a unique caption per selected account (same photo, different text)">✦ Make unique</button>
             <button type="button" class="amp-btn" data-amp="x" data-amp-id="${id}" title="Open X composer with a DW visit link">𝕏 Post</button>
@@ -202,7 +209,8 @@ window.MCC_PANELS['vendors'] = {
           </div>`;
           // Review area (empty until "Make unique"); id-tagged so the delegated
           // handler can find + (re)fill it. Rebuilt every render from stored state.
-          const review = `<div class="amp-review" data-amp-review="${id}" hidden></div>`;
+          // Suppressed entirely for restricted (never-front-facing) brands.
+          const review = restricted ? '' : `<div class="amp-review" data-amp-review="${id}" hidden></div>`;
           return `<div class="ig-item" data-post-id="${esc(postId)}">${anchor}${ampRow}${review}</div>`;
         }).join('');
         return `<div class="ig-list">${items}</div>`;
@@ -593,6 +601,7 @@ window.MCC_PANELS['vendors'] = {
       .ig-li-meta{font-size:10.5px;color:var(--muted,#8a8372);font-variant-numeric:tabular-nums}
       .ig-item{display:flex;flex-direction:column;gap:2px}
       .amp-row{display:flex;gap:5px;justify-content:flex-end;padding:1px 2px 2px;flex-wrap:wrap}
+      .amp-note{font-size:10.5px;line-height:1;color:#a1341f;border:1px solid #e5c9c2;background:#fbf1ee;border-radius:6px;padding:4px 8px;white-space:nowrap}
       .amp-btn{font-size:10.5px;line-height:1;padding:3px 7px;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--muted,#8a8372);cursor:pointer;opacity:.55;transition:opacity .12s,background .12s,color .12s;white-space:nowrap}
       .amp-btn:hover{opacity:1;background:#f3eee2;color:inherit}
       .amp-btn.amp-strong{border-color:#c9b98f;color:#8a6d2f}

← 7e55f1a Add per-post "Post from" account selector + "Make unique" pe  ·  back to Marketing Command Center  ·  mcc: credential-safe fetch guard in shell (inoculate root-re 37ff9a8 →