[object Object]

← back to Trending Dw

trending: wire 3 generated GAP originals (TR-013/014/050 texture+abstract) into cards; 37/50 now real our-own images; 13 remain (ComfyUI-down seam-gate wall)

baeb0bdf25a7dfcc718a1f4f6efe977edeebd749 · 2026-07-03 10:17:32 -0700 · Steve

Files touched

Diff

commit baeb0bdf25a7dfcc718a1f4f6efe977edeebd749
Author: Steve <steve@designerwallcoverings.com>
Date:   Fri Jul 3 10:17:32 2026 -0700

    trending: wire 3 generated GAP originals (TR-013/014/050 texture+abstract) into cards; 37/50 now real our-own images; 13 remain (ComfyUI-down seam-gate wall)
---
 data/bestsellers.json    | 18 ++++++++++++------
 scripts/attach-images.js | 16 +++++++++++++---
 2 files changed, 25 insertions(+), 9 deletions(-)

diff --git a/data/bestsellers.json b/data/bestsellers.json
index 2a27180..2e952ac 100644
--- a/data/bestsellers.json
+++ b/data/bestsellers.json
@@ -232,8 +232,10 @@
       "signal": "Key emerging trend",
       "signalRank": 81,
       "url": "https://blog.wallpaperdirect.com/wallpaper-trends-forecast-2025-2/",
-      "needsGeneration": true,
-      "genBrief": "Original Texture-Effect in Greige — generated in our own hand from live trend research, settlement-gated. Trend signal: Key emerging trend (rank 81)."
+      "image": "/assets/gap/TR-013.png",
+      "imageSource": "DW in-house original (generated)",
+      "imageDesign": "Original Texture-Effect — Greige",
+      "isOurOriginal": true
     },
     {
       "id": "TR-014",
@@ -248,8 +250,10 @@
       "priceBand": "$$$",
       "signal": "Tactility trend",
       "signalRank": 77,
-      "needsGeneration": true,
-      "genBrief": "Original Texture-Effect in Cloud White — generated in our own hand from live trend research, settlement-gated. Trend signal: Tactility trend (rank 77)."
+      "image": "/assets/gap/TR-014.png",
+      "imageSource": "DW in-house original (generated)",
+      "imageDesign": "Original Texture-Effect — Cloud White",
+      "isOurOriginal": true
     },
     {
       "id": "TR-015",
@@ -913,8 +917,10 @@
       "signal": "Premiere Vision AW26-27 direction",
       "signalRank": 76,
       "url": "https://patternbank.com/trends/premiere-vision-AW-26-27-print-trends",
-      "needsGeneration": true,
-      "genBrief": "Original Abstract Blur in Ombre Blue — generated in our own hand from live trend research, settlement-gated. Trend signal: Premiere Vision AW26-27 direction (rank 76)."
+      "image": "/assets/gap/TR-050.png",
+      "imageSource": "DW in-house original (generated)",
+      "imageDesign": "Original Abstract Blur — Ombre Blue",
+      "isOurOriginal": true
     }
   ],
   "imagesAttachedAt": "2026-07-02"
diff --git a/scripts/attach-images.js b/scripts/attach-images.js
index f8bc75a..db327e0 100644
--- a/scripts/attach-images.js
+++ b/scripts/attach-images.js
@@ -138,9 +138,19 @@ async function main(){
     delete it.needsGeneration; delete it.genBrief;
 
     if (GAP_STYLES.has(it.style)){
-      it.needsGeneration = true;
-      it.genBrief = `Original ${it.style} in ${it.color} — generated in our own hand from live trend research, settlement-gated. Trend signal: ${it.signal} (rank ${it.signalRank}).`;
-      report.gap++;
+      // a generated original may already exist (self-hosted, settlement+seam gated) — use it
+      const gapFile = path.join(DEST_ASSETS, 'assets', 'gap', it.id + '.png');
+      if (fs.existsSync(gapFile)){
+        it.image = '/assets/gap/' + it.id + '.png';
+        it.imageSource = 'DW in-house original (generated)';
+        it.imageDesign = `Original ${it.style} — ${it.color}`;
+        it.isOurOriginal = true;
+        report.covered++;
+      } else {
+        it.needsGeneration = true;
+        it.genBrief = `Original ${it.style} in ${it.color} — generated in our own hand from live trend research, settlement-gated. Trend signal: ${it.signal} (rank ${it.signalRank}).`;
+        report.gap++;
+      }
       continue;
     }
 

← bf548c9 gap-lane generator: 3 seam-PASS settlement-OK tiles (TR-013/  ·  back to Trending Dw  ·  trending: data-freshness badge + per-card spotted timestamp ab31ac0 →