[object Object]

← back to Marketing Command Center

composer: Generate copy now sends kind=instagram (was 'social' → silently degraded to headline). Contrarian catch.

f3e5129dfca3d4da117e73da6ef4064c004a53eb · 2026-07-17 07:57:22 -0700 · Steve Abrams

Files touched

Diff

commit f3e5129dfca3d4da117e73da6ef4064c004a53eb
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Fri Jul 17 07:57:22 2026 -0700

    composer: Generate copy now sends kind=instagram (was 'social' → silently degraded to headline). Contrarian catch.
---
 public/panels/composer.js | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/public/panels/composer.js b/public/panels/composer.js
index 53d4718..9471cfe 100644
--- a/public/panels/composer.js
+++ b/public/panels/composer.js
@@ -85,7 +85,9 @@ window.MCC_PANELS['composer'] = {
     $('#cmp-gen').addEventListener('click', async () => {
       $('#cmp-gen').disabled = true; $('#cmp-gen').textContent = '…generating';
       const tone = $('#cmp-tone').value;
-      const r = await jpost('/api/copy/generate', { kind: 'social', tone, topic: `${tone} wallcovering social post for Designer Wallcoverings`, product: 'any' });
+      // kind MUST be a valid copy KIND id (instagram/tiktok/…); an unknown value like
+      // 'social' silently degrades server-side to a 'headline' — the wrong content type.
+      const r = await jpost('/api/copy/generate', { kind: 'instagram', tone, topic: `${tone} wallcovering social post for Designer Wallcoverings`, product: 'any' });
       const v = (r && r.variants) || [];
       const first = v.length ? (typeof v[0] === 'string' ? v[0] : (v[0].text || v[0].body || v[0].caption || '')) : '';
       if (first) { cap.value = first; countIt(); }

← 27b2af2 5x: composer clean-twice report  ·  back to Marketing Command Center  ·  5x: contrarian gate resolved — generate+publish now function 4877837 →