← 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
M public/panels/composer.js
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 →