Pastelwallpaper
repo: ~/Projects/pastelwallpaper · 92 commits · 0 in last 24h, 3 in last 7d · █▄
Search the build
92 commits indexed
94744d9
2026-09-23
front-page-steward: ux-primitives bundle (grid) TK-12031
3f2b752
2026-09-22
revert ux-primitives auto-apply — coordinator gates fan-out (TK-12031)
004477e
2026-09-22
front-page-steward: ux-primitives bundle (silent) TK-12031
72a10e0
2026-09-10
Add clean /privacy route (AdSense URL consistency)
9c9e4c6
2026-09-10
Standardize privacy policy to /privacy.html + footer link (AdSense)
ab9624c
2026-09-10
Add AdSense-compliant privacy policy page + footer link + /privacy route
28166f7
2026-09-09
TK-11341: add AdSense Auto-Ads loader + ads.txt (revert to remove ads)
4b18e3b
2026-08-24
auto-data-snapshot: 2026-08-24T04:13:07 (1 data files) — server.js.ldrbak.1787569812
20b9df3
2026-08-24
Add p.visible!==false guard to product load filter (cluster5 resid)
1405f90
2026-08-22
auto-data-snapshot: 2026-08-22T11:19:22 (1 data files) — data/products.json
78469f6
2026-08-12
viewer standard: add per-field on/off menu (Fields ▾) to product grid
84de39f
2026-08-04
fix: take infinite-scroll .loading indicator out of flow (kills ~0.3-0.4 CLS scroll-jump)
5312392
2026-08-04
Wire DW Meta Pixel 1431180262113856 + DW-network ad slot [ads/tracking rollout]
b18bd87
2026-08-03
GA4: propagate site gtag to untagged pages (fleet coverage)
bdaaf38
2026-08-01
pastelwallpaper: adopt href-to-deeper-data storefront primitives (TK-10093)
b631ece
2026-07-30
search: scroll results into view on mobile (grid was below the fold → looked like nothing happened)
928a02e
2026-07-29
corner-nav: block javascript:/data: URIs in search preview (URL-scheme allowlist)
b40445b
2026-07-29
search: /api matcher now covers title+tags+description+type+vendor+sku
8e5d6cb
2026-07-29
corner-nav: live as-you-type search with thumbnail previews (title+tags+description)
1f0b229
2026-07-06
Square product-card images (aspect-ratio 1/1)
48cb200
2026-07-03
corner-nav: move login to its own hamburger in upper-left (panel slides from left)
7a1db02
2026-06-19
Mount new-arrivals promo strip (Tier B): require ../_shared/_universal-promo-banner before express.static — text-only rotating 'New · <product> →' banner from /api/products?sort=newest. Local only; deploy gated.
f907fb8
2026-06-18
fix: safeImg allow same-origin /img/ proxy urls (vendor-neutral image proxy 2026-06-03) — product cards were falling back to hero-bg (images all wrong)
daf516e
2026-06-11
pastelwallpaper: rails fire again — wire sliders + grid filter to aesthetic-OR-tags matcher (prod-safe try-require + inline fallback)
decd963
2026-06-09
step2 vendor-leak fix: dual-key /sample resolver + handle_display hrefs
d1718cd
2026-06-09
snapshot before step2 codemod
5c57e55
2026-06-03
Scrub residual vendor names from products.json (title/vendor/tags); preserve sku/handle
219f5ef
2026-06-03
seo/a11y: add visually-hidden <h1> (site name) for heading semantics — zero visual change
9ce583d
2026-06-03
a11y: add aria-label to contact/sample form inputs (zero visual; screen-reader association)
af88565
2026-06-01
admin: add dw-theme-nav 20-theme navigator (upper-right, admin-only)
58154ee
2026-06-01
fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
8b6438b
2026-06-01
dw-header: hide ANY pre-existing <header> (not just ns-header); title-case bare-slug names
f0ea133
2026-06-01
FIX: dw-header was injected inside a doc-comment (never ran); re-inject before the real </body>
e69d51b
2026-06-01
hero: rotate curated room-setting pool (hero-pool.json), guard >=1400px, no swatch blur
8dd071c
2026-06-01
header name → domain name 'Pastel Wallpaper' (remove odd brand name)
2873213
2026-06-01
hero/ideas: single big full-bleed hero (remove 2x2 four-square grid + hero-4grid.js/json + inert CSS), collapse Ideas to one rail
ee17a81
2026-06-01
disable hero-4grid overlay so the unique high-res room/pattern hero shows full-bleed
8949868
2026-06-01
fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local branch
e9296bd
2026-06-01
homepage: collapse duplicated 'Ideas' rail-eyebrows into one section eyebrow
3814593
2026-06-01
Unique hero image (backsync from prod, fleet hero dedup 2026-06-01)
dd19b4c
2026-06-01
Re-add Big Red embed (revert conflicted; re-injected)
ad17dee
2026-06-01
fleet rebuild: dw-header (hamburgers UL + centered name) + unique high-res hero + accent — local pilot branch
844b44d
2026-06-01
hero: activate self-contained 2x2 hero-4grid (fleet sweep, local)
5623d66
2026-06-01
Remove Big Red widget — never UX-worked, collided with Help pill (fleet sweep)
5ba231d
2026-06-01
301 redirect legacy /(care|history|sourcing|trade).html + /index.html to clean URLs before static
f2d3e91
2026-06-01
sister-site nav window.open gets noopener,noreferrer feature flags
ace7c3b
2026-05-30
fix: remove leaked backup file from public/ and add *.bak-* to .gitignore
257abb8
2026-05-29
feat(fleet): theme1/theme2 query-param-gated toggle on catalog page
14b3f0d
2026-05-28
scrub vendor name leaks from products.json source (238 products: title/vendor/tags cleaned per sku-redact denylist)
be2dcc5
2026-05-26
frontend: cleanSku() strips vendor names from displayed sku (.ven/list/detail) + defer renderRailSections call (fix ReferenceError) — click-through verified
2b7ecdc
2026-05-26
sku-redact: wire shared vendor-id display scrubber
1c123c7
2026-05-26
rails: editorial labels for firing aesthetic buckets
d918819
2026-05-26
homepage: add retrowalls-canonical rail-sections (id=rails + renderRailSections)
fd2ae5f
2026-05-26
site.config rails: align with actual catalog buckets
d896cb4
2026-05-25
/api/facets: total counts the filtered list, not the entire niche slice
1301d44
2026-05-25
wire api-vendor-redact middleware + scrub p.vendor render
48c62e2
2026-05-25
retag aesthetic from PG: 591 rows updated
317d1c1
2026-05-20
add: pre-stage Meta Pixel snippet (placeholder; flip via _dw-batch set-fb-pixel.sh)
2c5f36d
2026-05-19
make server.js self-contained — gate _shared/admin-catalog behind MICROSITE_ADMIN_ENABLED env flag (kamatera deploy unblock)
b60e53b
2026-05-19
Phase 2b: harden .card .pat against long-token title clipping (overflow-wrap)
79e6857
2026-05-19
fix: null-guard dead #theme-toggle reference (clean console + immediate grid render)
49046e4
2026-05-19
Phase 2: mobile-ready + tap-to-reveal
81dc95d
2026-05-19
stage2: wire microsite catalog + admin CRUD + grid/list view
3e876d7
2026-05-19
nav: retarget dead /about to /history, drop dead /vocabulary links, add noreferrer to external link
cd2c4f7
2026-05-19
untrack 18 bak/pre snapshot files + broaden .gitignore to *.bak.* and *.pre-*
c23bb5d
2026-05-19
/api/facets total counts the niche-filtered list actually served
cf45e9e
2026-05-19
fix sort: send sort param to API + hydrate saved value before first grid load
6b4916a
2026-05-14
hero-4grid: relocate json from data/ to public/ for Express static
115709a
2026-05-14
4-grid hero: drop-in script + crop CSS + initial 4 newest products
04c9abc
2026-05-14
favicon: Mag-7-inspired SVG glyph
f61abd0
2026-05-13
fix env wiring — anchor dotenv to __dirname so .env loads even when pm2 cwd is wrong
c4d48f1
2026-05-13
corner-nav: title-case the brand name even when .ns-name source is lowercase
c31f8f9
2026-05-13
corner-nav: title-case brand display (e.g. corkwallcovering → Cork Wallcovering)
789d72f
2026-05-13
corner-nav: fix injection — script tag was landing inside HTML comment, now anchored to real </body>
0936f32
2026-05-13
embed Big Red customer chat (lower-left, retail mode, vendor-redacted)
a8b08ee
2026-05-13
chip-click → product details modal; vendor redacted in card overlay
7caf4d6
2026-05-13
add universal corner-nav.js (UR 4-icon: bag/account/search/menu)
174d1d9
2026-05-13
remove stray contact modal markup that was rendering inline on the page
966aa4b
2026-05-13
header: remove duplicate <header> with dwmOpen-contact (was overlapping ns-header) + add display:none default to .ns-modal so How-can-we-help only opens on click. Restores canonical logo-UL + hamburger-UR layout per MEMORY rule.
8a59efc
2026-05-13
brand: replace remaining fake brand globally → 'pastelwallpaper' across head/meta/wordmark/footer — enforces MEMORY brand-stem rule
e7235d2
2026-05-11
fleet-grid refine: chip_uniform_aspect (pastelwallpaper)
d26a7bd
2026-05-10
sort-skill UI: add Light→Dark / Dark→Light / Color Wheel options
8d4ee8d
2026-05-10
sort-skill canonical: add light-dark/dark-light/wheel + helpers
20d9905
2026-05-07
graphic-loop pass 13: real footer brand + Facebook link + OG/Twitter meta tags
3aa2f30
2026-05-07
graphic-loop pass 12: niche keyword filter (no off-niche products like 'solid' on patterned sites)
df63671
2026-05-07
graphic-loop pass 11: add Ideas rails (New this week + Curated picks) above main grid
9f668fe
2026-05-07
graphic-loop pass 10: center-mark to top + readable text-shadow + tighter letter-spacing (no mix-blend-mode)
69c212c
2026-05-07
graphic-loop pass 9: real site name + 20-image hero rotation + 2400px hero res
02807ae
2026-05-07
graphic-loop pass 8 fix: divergent template — swap heading font to Poppins
177859b
2026-05-07
graphic-loop pass 8: theme-aware font Poppins (panel-approved comprehensive 16-bucket assignment)
ac12a9e
2026-05-06
graphic-loop pass 2: fix .corner-mark contrast + soften hero overlay (qwen3:14b consensus across fleet)
8ac9e0b
2026-05-06
initial scaffold (gitify-all 2026-05-06)
Authors
Steve 86 front-page-steward 3 auto-commit-fleet 2 steve 1
Skills used
/products 4 /privacy 3 /sample 2 /vendor 2 /tags 2 /body 2 /index 2 /list 2 /sliders 2 /facets 2 /off 1 /tracking 1 /data 1 /handle 1 /a11y 1 /ideas 1 /json 1 /pattern 1 /theme2 1 /detail 1 /div 1 /mint 1 /sage 1 /butter 1 /sky 1 /lavender 1 /api-vendor-redact 1 /admin-catalog 1 /about 1 /history 1
Creative ideas + design notes
Commits with substantial prose (≥120 chars) — the rationale behind each move.
ace7c3b · 2026-05-30 · fix: remove leaked backup file from public/ and add *.bak-* to .gitignore
public/index.html.bak-20260526152130 was untracked but physically present in
the static-serve directory. Removed the file. Added *.bak-* pattern to
.gitignore so timestamped backup variants are covered alongside *.bak and *.bak.*.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
257abb8 · 2026-05-29 · feat(fleet): theme1/theme2 query-param-gated toggle on catalog page
Default: theme1, toggle hidden. Opt-in via ?theme=2 or localStorage
('wallco-page-theme' key shared across the fleet). Same gate pattern
as dw-domain-fleet productPage.
d918819 · 2026-05-26 · homepage: add retrowalls-canonical rail-sections (id=rails + renderRailSections)
Fleet rails sweep A3 — adds the canonical DW rail-sections pattern from
retrowalls (per LEDGER 2026-05-26 correction note). Renders rails from
/api/sliders ABOVE the flat grid on the unfiltered '/' home view; hides
itself when state.q or state.facet !== 'all'. Clicking 'View all -> on a
rail title calls state.facet=aes + resetGrid + scrollIntoView('#shop')
which is the canonical jumpToFacet behavior. Patch is 3 pieces:
(1) <div id='rails' style='display:none'></div> before <div id='grid'>
(2) .rail-section/.rail-head/.rail-all/.grid.rail-grid CSS
(3) async renderRailSections() fn + startup call right after loadGridPage().
Coexists cleanly with the existing 2-rail Ideas block above (which renders
'New this week' + 'Curated picks' from /api/products and survives in any
filter state).
fd2ae5f · 2026-05-26 · site.config rails: align with actual catalog buckets
Fleet rails sweep — config rails referenced blush/mint/sage/butter/sky/lavender (the
ASPIRATIONAL pastel palette) but products.json has no such buckets. Pre-existing
catalog buckets into beige(374) contemporary(141) traditional(31) cream(17) white(14)
textured(14). Replaced rails with these so /api/sliders returns non-empty data.
d896cb4 · 2026-05-25 · /api/facets: total counts the filtered list, not the entire niche slice
Endpoint now accepts the same ?q / ?aesthetic / ?vendor params as
/api/products and computes the aesthetics map, vendors map, and total
off the filtered list. Previously total always reported the full
PRODUCTS_NICHE length, which made the result-count badge wrong as soon
as the user typed in the search box or picked an aesthetic chip.
1301d44 · 2026-05-25 · wire api-vendor-redact middleware + scrub p.vendor render
Mounts ../_shared/api-vendor-redact as the first app.use, above route
registration, so /api/* responses can never leak vendor fields or the
vendors facet map. Also replaces the inline (p.vendor || '') render in
the Ideas rail card with the canonical 'Designer Wallcoverings' string
so the customer-facing HTML matches the API contract.
48c62e2 · 2026-05-25 · retag aesthetic from PG: 591 rows updated
before: all=600
after: all=9, beige=374, contemporary=141, cream=17, textured=14, traditional=31, white=14
Backfills correct multi-bucket aesthetic tagging from dw_unified.microsite_products
(DTD verdict B, 2026-05-25 fleet retag run).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
File tree
27 files tracked. Click any to browse the source at HEAD.
rendered in 2ms