[object Object]

← back to AbramsEgo

queue: engine 5 — WPB design licensing (LLM catalog copy + channel memo, settlement-safe read-only, all channels gated); memo + audit updated to 5 engines

b591612d366c2cdfbc2a69845e8cd25485674b3e · 2026-07-01 16:21:27 -0700 · Steve

Files touched

Diff

commit b591612d366c2cdfbc2a69845e8cd25485674b3e
Author: Steve <steve@designerwallcoverings.com>
Date:   Wed Jul 1 16:21:27 2026 -0700

    queue: engine 5 — WPB design licensing (LLM catalog copy + channel memo, settlement-safe read-only, all channels gated); memo + audit updated to 5 engines
---
 build-queue/tasks/39-wpb-design-licensing.md | 31 ++++++++++++++++++++++++++++
 build-queue/tasks/41-golive-memo.md          |  6 ++++--
 build-queue/tasks/42-replenish.md            |  3 ++-
 3 files changed, 37 insertions(+), 3 deletions(-)

diff --git a/build-queue/tasks/39-wpb-design-licensing.md b/build-queue/tasks/39-wpb-design-licensing.md
new file mode 100644
index 0000000..fa52f76
--- /dev/null
+++ b/build-queue/tasks/39-wpb-design-licensing.md
@@ -0,0 +1,31 @@
+# Task 39 — NEW ENGINE 5: license/sell Wallpaper's Back designs to others (LLM-powered)
+
+Steve directive: "start using the designs we created for wallpapersback to sell to others too — use
+llm." Build the LICENSING rail draft-to-live like the other engines. ~15 min. HARD RAILS: WPB
+designs carry a SETTLEMENT legal gate — only designs that are LIVE on wallpapersback.com (already
+settlement-passed + published) are eligible; NEVER touch unpublished/user_removed designs, never
+write to WPB's DB or deploy anything to it. External marketplace listings/outreach = GATED.
+
+1. server.js: add a 5th engine to the revenue registry — key `licensing`, label
+   "License WPB designs (B2B/marketplaces)", status gated, note "catalog built — awaiting Steve
+   channel signups". Same ledger/pill mechanics as the others.
+2. Read-only pull of the LIVE catalog: `curl https://wallpapersback.com/products.json` (or the
+   equivalent public designs feed — probe /products.json, /api/designs, sitemap; read-only GETs
+   only). Select the top ~24 designs (prefer variety of styles). Cache to
+   data/wpb-licensing-catalog.json: {id, title, img, wpbUrl}.
+3. USE THE LLM (you): for each selected design write licensing copy — a 1-line style description +
+   suggested license tiers (e.g. digital single-use $X / commercial print $Y / exclusive $Z —
+   draft pricing, clearly marked DRAFT). Store in the same JSON.
+4. Landing (public/landing.html): add a "License our original designs" section — grid of the
+   cached thumbnails (link back to wallpapersback.com product pages), the LLM copy, and an
+   inquiry CTA that posts to the existing /api/waitlist with source:"licensing" + tier field.
+   Grid obeys Steve's hard rules if >12 items (sort+density). Include route/assets in the
+   PUBLIC_LANDING allowlist (flag stays 0).
+5. Write memos/licensing-channels.md (LLM-drafted): ranked channel strategy — B2B licensing
+   outreach targets, print-on-demand marketplaces (Spoonflower/Society6/Etsy-style), what each
+   requires, revenue mechanics. ALL signups/listings/outreach are Steve-gated switches — the memo
+   feeds task 41's consolidated approval memo (if 41 already ran, append a "5. licensing" switch
+   section to ~/.claude/yolo-queue/pending-approval/abramsego-golive-260701.md directly).
+6. pm2 restart; verify /api/data shows 5 engines and the landing section renders from the cache.
+   Commit `feat(licensing): WPB design licensing engine — catalog + LLM copy + channel memo (engine 5)`.
+Local only. No WPB writes, no marketplace accounts, no outreach — draft everything.
diff --git a/build-queue/tasks/41-golive-memo.md b/build-queue/tasks/41-golive-memo.md
index cea069d..281568f 100644
--- a/build-queue/tasks/41-golive-memo.md
+++ b/build-queue/tasks/41-golive-memo.md
@@ -5,12 +5,14 @@ by reference). Everything is built; write the ONE memo Steve approves to turn it
 
 Write ~/.claude/yolo-queue/pending-approval/abramsego-golive-260701.md:
 - **Owned by:** vp-abramsego · Drafted: <ISO now> · Status: NEEDS STEVE INPUT
-- One section per engine (sell_product, affiliate, billable_work, ads): what's BUILT + the test
+- One section per engine (sell_product, affiliate, billable_work, ads, licensing — the 5th engine
+  from task 39, WPB design licensing): what's BUILT + the test
   evidence (curl output / ledger rows / screenshots refs), the EXACT one-switch turn-on
   (1. create AbramsEgo Stripe acct + paste live keys via /secrets; 2. PUBLIC_LANDING=1 + deploy to
   Kamatera + subdomain DNS — run /dtd to shortlist 3 subdomain candidates under agentabrams.com and
   present them; 3. edit affiliates.json entries to active after joining programs; 4. paste
-  AD_NETWORK_PUB_ID), rollback per switch, and vp-abramsego's APPROVE/REVISE/BLOCK line per item.
+  AD_NETWORK_PUB_ID; 5. pick licensing channels from memos/licensing-channels.md + create the
+  marketplace/outreach accounts), rollback per switch, and vp-abramsego's APPROVE/REVISE/BLOCK line per item.
 - End with a numbered "**Steve: to turn it all on**" list — each item ONE action.
 - Note: supersedes memos/070126A (reference it; don't delete).
 Also update data/revenue.json engine notes to point at the memo. Commit
diff --git a/build-queue/tasks/42-replenish.md b/build-queue/tasks/42-replenish.md
index eecb0d3..494ff66 100644
--- a/build-queue/tasks/42-replenish.md
+++ b/build-queue/tasks/42-replenish.md
@@ -3,7 +3,8 @@
 You are the queue replenisher. Read SPEC.md + the plan intent: EVERYTHING built to one-switch-from-
 live, gated switches drafted in ~/.claude/yolo-queue/pending-approval/abramsego-golive-260701.md.
 
-1. Audit the RUNNING :9773 instance: all 4 revenue engines scaffolded per tasks 33-38 (checkout rail
+1. Audit the RUNNING :9773 instance: all 5 revenue engines scaffolded per tasks 33-39 (incl. the WPB
+   design-licensing engine — catalog cached, landing section, channel memo; checkout rail
    keys-ready or test-verified, landing CTAs + PUBLIC_LANDING=0, demo video, /go redirects, report
    generator, ad slot), design research applied (task 40), go-live memo exists + is complete
    (task 41), hard rules intact (🕓/sort+density/cost labels), NOTHING gated executed (landing still

← ccc07ec auto-save: 2026-07-01T16:07:22 (4 files) — build-queue/stage  ·  back to AbramsEgo  ·  chore: DOM wiring audit (fable) — clean; all 14 keys rendere d19826d →