Dw Fleet Registry

repo: ~/Projects/dw-fleet-registry · 44 commits · 0 in last 24h, 0 in last 7d ·

Search the build

44 commits indexed

  1. ba7d3db 2026-07-03 chore: macstudio3 migration — reconcile from mac2 + repoint paths (stevestudio2→macstudio3, node/npm/npx→/opt/homebrew)
  2. 18b7545 2026-06-01 deploy: ssh mkdir -p prod rooms/ before rsync (local openrsync lacks --mkpath)
  3. a6f39b4 2026-06-01 livefleet viewer: add fleet Sign out (SSO logout) link
  4. feeb059 2026-06-01 rooms: niche-matched pattern picker + regen (fixes off-niche/sample-crop heroes)
  5. 8a74fdf 2026-06-01 rooms: batch generator (all standalone sites) + deploy pushes staged room PNGs
  6. d2901dc 2026-06-01 re-assign heroes from 3526-img pool: 33 room settings (was 12) + 32 patterns, 65/65 unique 0 dupes
  7. a45e546 2026-06-01 full 65-site header certification results
  8. ab9e050 2026-06-01 rooms: gen-hero-rooms.mjs (generate room-setting heroes via :3075 + 2x upscale)
  9. f1cf338 2026-06-01 fleet viewer: proxy-side image resize via optional sharp (/img?w=) — caps non-Shopify heroes to webp; sharp is an optionalDependency w/ graceful fallback
  10. af278f4 2026-06-01 dw-header: hide ANY pre-existing <header> + propagate to fleet; verified 11 sites render new header public-mode
  11. 2cf8354 2026-06-01 fix-header-inject: re-inject dw-header before real </body> (was trapped in a doc-comment on 51/65 sites → header rebuild was inert)
  12. c4ca891 2026-06-01 library: harvest full Shopify image arrays + room/pattern/swatch tagging; picker Rooms filter
  13. 389f621 2026-06-01 fleet viewer: downsize grid thumbnails (Shopify width param) — saved hero stays full-res
  14. e53dc97 2026-06-01 viewer: deploy curated hero pools live (hero-pool.json rsync to prod)
  15. 706726c 2026-06-01 viewer: hero-pool picker — pick high-res images to rotate per site
  16. 8a825a8 2026-06-01 normalize header names → domain name across 53 sites (remove odd brand names like Studio Castel)
  17. 2df70d0 2026-06-01 fleet viewer: make hero drop zone the whole card, not just the chip
  18. 14428b6 2026-06-01 viewer: harden rescrape single-flight against client disconnect
  19. 4ab8683 2026-06-01 viewer: add 'Rescrape heroes (all)' button → POST /api/rescrape-heroes
  20. 30cf448 2026-06-01 fleet: 5 parked domains live + unique heroes; rebake clears last dup cluster
  21. 6253b68 2026-06-01 fix deploy phase: brace-delimit ${BRANCH} (set -u choked on $BRANCH hugging a multibyte arrow)
  22. 9f6548c 2026-06-01 rotate-and-deploy.sh — phased one-command driver (route/kamatera/unfreeze/deploy), dry-run default, no auto-chain
  23. ffa5ab5 2026-06-01 fleet hero/ideas transform tool + deploy
  24. 4e12b31 2026-06-01 fleet hero/ideas transform tool
  25. 6006e2f 2026-06-01 disable-grid sweep: 44 hero-4grid overlays off so unique high-res heroes show full-bleed (1 known residual: PANEL-grid variant on a few sites)
  26. 0e3363a 2026-06-01 viewer: proxy cross-origin hero images through /img — fleet microsites send CORP same-origin (helmet default) which blocked direct <img> hotlinking, leaving ~30 self-hosted hero-bg.jpg cards blank. Now 118/118 render
  27. f5aaaa0 2026-06-01 heroes = truly-high-res: 12 real Shopify room settings (niche-matched) + high-res patterns elsewhere; gradients removed; 65/65 unique, 0 dupes
  28. e0e5737 2026-06-01 heroes: every site gets a DISTINCT high-res image — pull from /api/products + local catalogs, greedy unique assignment (owner keeps styled hero, cousins get own product img), branded fallback for 5 imageless pages. 0 blanks, 0 dups, 114 distinct URLs
  29. aa6a541 2026-06-01 close out fleet: header-only on 24, niche-search heroes for 7, unique gradient heroes for 17; 65/65 sites have header + a UNIQUE hero (0 dupes)
  30. a8abc42 2026-06-01 gap-fill: 13 niche-starved microsites get a unique high-res hero (any-unused pool fallback, fleet-deduped) — closes the hero-dup gap to 61/62 (thesetdecorator excluded by design)
  31. a6469f0 2026-06-01 full-fleet fan-out: 41/65 sites rebuilt (header + unique high-res niche hero + accent), 0 fail; 24 skipped (niche has no unused high-res match in 241-img pool)
  32. 4204905 2026-06-01 viewer: pre-resolve+validate hero images into registry, render baked heroes directly (no 118-fetch storm) — 110/118 paint instantly; reprobe re-bakes
  33. 6392f46 2026-06-01 viewer: 'Hide redirect dupes' toggle (default on) — folds 6 near-dup redirect domains into their canonical card with a +N alias badge
  34. 80203d0 2026-06-01 fleet fan-out engine + hero ledger: 4 sites rebuilt (jute+metallic+mylar+wallpapersback), 3 skipped (no high-res hero in slice)
  35. d8d6629 2026-06-01 reusable dw-header.js drop-in: hamburgers UL (nav + admin) + centered name, configurable per-site (siteName/accent/navLinks/adminLinks), admin-reveal stub; + hero-dup audit (50 files, only 14 unique)
  36. e2ab0c2 2026-06-01 fix(grasscloth board): dark --muted/--rule on white ground so tagline, captions, footer + hairlines are visible (were white-on-white)
  37. 8886e66 2026-06-01 read-only template-drift audit: 37 mapped sites vs assigned fashion templates (30 match, 7 drift)
  38. 41cdb66 2026-06-01 live-data boards: scrape theme tokens from served CSS + embed real hero photos (download same-origin so Figma capture serializes them); validate hero URLs vs 404s
  39. bf16606 2026-06-01 live fleet viewer (:9774) — 119 cards, live og:image thumbs + status, per-site theme accents, sort+density; carry theme tokens in registry
  40. e71047d 2026-06-01 hybrid brand demo: 3 per-site boards themed from real style-guide tokens (gilt/bodoni, coastal/cormorant, plum/playfair), captured to Figma
  41. efc57ba 2026-06-01 DW brand-starter HTML, captured into Figma (wordmark + type scale + palette + material strip)
  42. 5dc9bf6 2026-06-01 record DTD-C canonical owners for 6 near-dup clusters (canonicalOwner + shouldRedirectTo per site)
  43. 9e40fd9 2026-06-01 add live-status probe (119/119 live); fix wallco.ai domain + drop non-site false positive
  44. e4626c1 2026-06-01 canonical DW fleet registry: reconcile 76 local microsites + 44 manifest domains into one source-of-truth (120 domains, 6 near-dup clusters)

Authors

Agents used

  • none detected

Skills used

  • /rooms3
  • /hero-pool3
  • /image-library2
  • /deploy2
  • /ideas2
  • /npm1
  • /npx1
  • /homebrew1
  • /sample-crop1
  • /static1
  • /body1
  • /pattern1
  • /swatch1
  • /short1
  • /deploy-map1
  • /set1
  • /remove1
  • /rescrape-heroes1
  • /wallpaperestimator1
  • /wallpaperdistributors1
  • /hospitalitydesignreps1
  • /wallpapercontractor1
  • /kamatera1
  • /unfreeze1
  • /products1
  • /accent1
  • /bodoni1
  • /cormorant1
  • /playfair1

Creative ideas + design notes

Commits with substantial prose (≥120 chars) — the rationale behind each move.

18b7545 · 2026-06-01 · deploy: ssh mkdir -p prod rooms/ before rsync (local openrsync lacks --mkpath)
Fixes hero-pool deploy failing when prod public/rooms/ didn't exist. Deployed all 45
staged sites live (45/45, 0 failures); verified rotateHero v2 paints the room heroes
in production.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
feeb059 · 2026-06-01 · rooms: niche-matched pattern picker + regen (fixes off-niche/sample-crop heroes)
Picks each site's wall pattern by domain-niche keyword + non-sample preference instead
of the newest product. Regenerates only sites where the pattern actually changes (cost-
minimal). Re-ran 17/45: era sites get period patterns (1950s vintage utensils, 1960s
geometric), chinoiserie gets real bamboo trellis vs a sample crop, jute gets actual jute.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
8a74fdf · 2026-06-01 · rooms: batch generator (all standalone sites) + deploy pushes staged room PNGs
batch-gen-rooms.mjs: per-site fetch top product as pattern -> 3 rooms via :3075 -> 2x
upscale -> stage /static/rooms/<domain>/. Redirect + NOPAT guards. Deploy endpoint now
rsyncs staged room PNGs to prod public/rooms/ and rewrites pool URLs to live https.
Batch: 45 sites / 133 rooms staged (~$5.30). gitignores heavy PNG artifacts.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
ab9e050 · 2026-06-01 · rooms: gen-hero-rooms.mjs (generate room-setting heroes via :3075 + 2x upscale)
Reusable pilot pipeline: pattern URL -> Gemini room render (~$0.04) -> sips 2x upscale to
~1728px (clears the 1400px hero guard). Verified on corkwallcovering (3 rooms, luxe quality).
gitignores the heavy PNG artifacts. Also lands the user's viewer sharp/thumbSrc edits.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
c4ca891 · 2026-06-01 · library: harvest full Shopify image arrays + room/pattern/swatch tagging; picker Rooms filter
harvest-catalog v2: long-edge>=1600/short>=1100 (catches landscape room shots), classifies
each image room|pattern|swatch by filename, sorts room-first. 467 imgs (49 room/360 pattern/
58 swatch) vs 265 before. /api/image-library gains kind+landscape; picker modal adds a
'Rooms only' dropdown + 🛋 badge. Note: catalog room shots are all Sister Parish lifestyle —
true per-niche interiors need room-setting-generator.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
e53dc97 · 2026-06-01 · viewer: deploy curated hero pools live (hero-pool.json rsync to prod)
Adds /api/hero-pool/deploy (writes repo public/hero-pool.json + rsync to prod cwd,
static so no reload) and a 'Save & deploy live' modal button. Persists slug->cwd->repo
map in data/deploy-map.json (69 sites). Full loop verified on 1950swallpaper:
pick hi-res -> save -> deploy -> rotateHero rotates the pool (primary 5773px).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
706726c · 2026-06-01 · viewer: hero-pool picker — pick high-res images to rotate per site
Adds /api/image-library (265-img catalog-hires pool, highest-res first, searchable),
/api/hero-pool GET + /set. New ⊞ per-card button opens a modal: left = ordered
rotation pool (drag-reorder, remove, sort-by-resolution, top=primary), right =
high-res library grid (click to add/remove, shows WxH). Saves heroImages[] to the
registry; heroImage = pool[0]. Pairs with the live rotateHero v2 (hero-pool.json).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
14428b6 · 2026-06-01 · viewer: harden rescrape single-flight against client disconnect
reply-once helper resets the flag + guards send() on a destroyed socket, plus a
5-min safety timeout — a short client timeout can no longer wedge the button or
crash the server (was hitting EADDRINUSE + stuck 409).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
4ab8683 · 2026-06-01 · viewer: add 'Rescrape heroes (all)' button → POST /api/rescrape-heroes
Re-scrapes every site's live hero page and re-bakes heroes via resolve-heroes.mjs
(no live-status probe, unlike Re-probe). Single-flight guarded — concurrent click 409s.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
30cf448 · 2026-06-01 · fleet: 5 parked domains live + unique heroes; rebake clears last dup cluster
bestwallpaperplace/wallpaperestimator/wallpaperdistributors/hospitalitydesignreps/wallpapercontractor
repointed GoDaddy A @+www to Kamatera, certbot SSL, unique og:image hero each.
Registry rebake: 0 effective visible dup clusters, 117 distinct heroes baked.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

File tree

91 files tracked. Click any to browse the source at HEAD.

Other build journals

← Dw Five Field Step0  ·  all 4 projects  ·  Dw Golive Gate →

Export

commits.csv · feed.atom · project.json · commits.json

rendered in 0ms