{"slug":"goldleafwallpaper","total":46,"limit":100,"offset":0,"since":null,"commits":[{"hash":"c2f925e","date":"2026-09-23 09:13:10 -0700","author":"front-page-steward","subject":"front-page-steward: ux-primitives bundle (grid) TK-12031","body":""},{"hash":"64ba5aa","date":"2026-09-22 16:44:56 -0700","author":"front-page-steward","subject":"revert ux-primitives auto-apply — coordinator gates fan-out (TK-12031)","body":""},{"hash":"6de32c9","date":"2026-09-22 15:34:44 -0700","author":"front-page-steward","subject":"front-page-steward: ux-primitives bundle (silent) TK-12031","body":""},{"hash":"62b760d","date":"2026-09-22 15:34:44 -0700","author":"front-page-steward","subject":"snapshot before ux-primitives bundle","body":""},{"hash":"f8e8316","date":"2026-09-19 01:31:10 -0700","author":"auto-commit-fleet","subject":"auto-data-snapshot: 2026-09-19T01:29:58 (1 data files) — data/products.json","body":""},{"hash":"8e34555","date":"2026-09-17 09:30:45 -0700","author":"Steve Abrams","subject":"IG poster: stop misclassifying code-9004 media errors as a dead token","body":"Meta stamps media-fetch rejections (code 9004 / subcode 2207052) as\ntype:OAuthException, so the old bare-\"OAuth\" regex fired a false\n\"token expired — re-auth\" alert on a HEALTHY token (confirmed healthy\nby meta-token-canary) and masked the real image-URL bug. Extract a\ntestable classify-error module that excludes the media-error signature\nfrom the auth test while preserving genuine code-190 expiry detection.\nShips a negative test (5/5) proving the captured media error is MEDIA\nnot AUTH and a real expiry still fires AUTH.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01ToTTHwSB27atpGoXUGymk9"},{"hash":"7e80969","date":"2026-09-13 16:23:49 -0700","author":"Steve","subject":"IG poster now verifies its token-expiry alert actually landed instead of claiming it did","body":"Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01GeVrknY4tKJETG3By4CAc5"},{"hash":"094acc2","date":"2026-09-10 12:18:47 -0700","author":"Steve Abrams","subject":"Add real privacy page + /privacy route (was catch-all serving homepage) — AdSense","body":"Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>"},{"hash":"fb81ad2","date":"2026-09-09 23:25:08 -0700","author":"Steve Abrams","subject":"Add Instagram embed of latest live posts to homepage (TK-11322)","body":""},{"hash":"c208dc7","date":"2026-09-09 16:02:08 -0700","author":"Steve","subject":"TK-11341: add AdSense Auto-Ads loader + ads.txt (revert to remove ads)","body":""},{"hash":"3de80c6","date":"2026-08-12 08:33:42 -0700","author":"Steve","subject":"viewer standard: add Grid/List toggle + per-field on/off menu (Fields) to product grid","body":""},{"hash":"493523d","date":"2026-08-10 14:24:24 -0700","author":"Steve Abrams","subject":"chore: lint, refactor (dedup Bronze, EXPIRED guard), v1.2.0 (session close)","body":""},{"hash":"b715c46","date":"2026-08-10 13:14:08 -0700","author":"Steve Abrams","subject":"ig-poster: add resumable bulk reposter (repost-all.js) — header-cropped, rate-limit backoff","body":""},{"hash":"49ec03e","date":"2026-08-10 12:51:35 -0700","author":"Steve Abrams","subject":"ig-poster: crop the Phillipe Romano header banner off each image before posting (Shopify CDN crop=bottom)","body":""},{"hash":"018206f","date":"2026-08-10 12:35:23 -0700","author":"Steve Abrams","subject":"ig-poster: loud CNCP alert on token/auth failure (no silent stop when token lapses)","body":""},{"hash":"9c92498","date":"2026-08-10 11:51:46 -0700","author":"Steve Abrams","subject":"ig-poster: poll media container status_code until FINISHED before publish (fixes 9007 media-not-ready)","body":""},{"hash":"8e0b68f","date":"2026-08-10 11:36:59 -0700","author":"Steve Abrams","subject":"Add @goldleafwallpaper 4h RML Instagram poster (token-gated dry-run, one-switch-from-live)","body":""},{"hash":"3c56540","date":"2026-08-04 10:23:06 -0700","author":"Steve Abrams","subject":"Harden form recipient default → info@designerwallcoverings.com (George external-send gate; removes latent bug if env override unsets) [DTD-B]","body":""},{"hash":"62417ec","date":"2026-08-03 13:37:06 -0700","author":"Steve","subject":"GA4: propagate site gtag to untagged pages (fleet coverage)","body":""},{"hash":"c5b6918","date":"2026-07-31 07:25:13 -0700","author":"Steve Abrams","subject":"auto-save: 2026-07-31T07:25:03 (1 files) — data/products.json","body":""},{"hash":"8d1f941","date":"2026-07-30 15:29:23 -0700","author":"steve","subject":"Fix metalleaf-rml-refresh: restore Homebrew PATH so launchd finds node","body":"Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>"},{"hash":"3ace871","date":"2026-07-29 09:58:11 -0700","author":"Steve Abrams","subject":"corner-nav: block javascript:/data: URIs in search preview (URL-scheme allowlist)","body":""},{"hash":"27b1c65","date":"2026-07-29 09:42:41 -0700","author":"Steve Abrams","subject":"corner-nav: live as-you-type search with thumbnail previews (title+tags+description)","body":""},{"hash":"05fb8b5","date":"2026-07-14 13:26:29 -0700","author":"Steve","subject":"chore: lint, refactor, v1.1.0 (session close)","body":""},{"hash":"57e5e4e","date":"2026-07-14 13:06:39 -0700","author":"Steve","subject":"Fix sample/inquiry forms: send George X-Send-Approval token (external-send guard) via env; load .env","body":""},{"hash":"1fd1307","date":"2026-07-14 13:01:19 -0700","author":"Steve Abrams","subject":"auto-save: 2026-07-14T13:01:14 (2 files) — scripts/rebuild-and-deploy.sh scripts/refresh-metalleaf-fleet.sh","body":""},{"hash":"698fb06","date":"2026-07-14 09:53:34 -0700","author":"Steve","subject":"Fix dead filter chips: replace Bronze/Foil/Lacquer/Black/Metallic (empty or all-selecting on RML line) with Gold/Silver/Neutral/Warm/Green — every chip now returns a real slice","body":""},{"hash":"04a3613","date":"2026-07-14 09:45:40 -0700","author":"Steve","subject":"Remove stale unreferenced root products.json (old catalog dump; site reads data/products.json)","body":""},{"hash":"fef19f4","date":"2026-07-14 09:00:15 -0700","author":"Steve Abrams","subject":"auto-save: 2026-07-14T09:00:07 (2 files) — data/products.json scripts/build-products.js","body":""},{"hash":"bd8bd31","date":"2026-07-14 08:10:42 -0700","author":"Steve","subject":"Fix product feed: show only the RML- Renaissance Metal Leaf line (61 gold/silver leaf SKUs), not the 1,957-product catalog dump","body":""},{"hash":"c4ec724","date":"2026-07-03 09:57:40 -0700","author":"Steve Abrams","subject":"corner-nav: move login to its own hamburger in upper-left (panel slides from left)","body":""},{"hash":"f68dbe4","date":"2026-06-12 13:01:26 -0700","author":"Steve Abrams","subject":"secret-strip goldleafwallpaper: env-first the hardcoded George basic-auth cred","body":""},{"hash":"c57feda","date":"2026-06-12 09:20:52 -0700","author":"Steve Abrams","subject":"code-health: 404-guard server.js/package*.json + .orig/.save/.old/.backup.json in static server","body":""},{"hash":"2bba3dd","date":"2026-06-03 20:45:07 -0700","author":"Steve","subject":"Scrub residual vendor names from products.json (title/vendor/tags); preserve sku/handle","body":""},{"hash":"08d533a","date":"2026-05-28 07:25:59 -0700","author":"Steve","subject":"scrub vendor name leaks from products.json source (1435 products: title/vendor/tags cleaned per sku-redact denylist)","body":""},{"hash":"c1f3396","date":"2026-05-26 10:16:48 -0700","author":"Steve","subject":"Embed _shared/corner-nav.js (logo UL + hamburger UR) on front page","body":""},{"hash":"7b0a137","date":"2026-05-18 20:46:00 -0700","author":"Steve Abrams","subject":"grid: persist sort + density slider to localStorage and hydrate on load (DW storefront rule)","body":""},{"hash":"999827e","date":"2026-05-18 20:45:03 -0700","author":"Steve Abrams","subject":"server: 404 all .bak/.pre-* snapshot files so editor backups never leak via static; .gitignore *.pre-* + .next/","body":""},{"hash":"6e1e0ce","date":"2026-05-13 07:22:44 -0700","author":"Steve","subject":"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.","body":""},{"hash":"71808c1","date":"2026-05-13 07:15:14 -0700","author":"Steve","subject":"brand: replace remaining fake brand globally → 'goldleafwallpaper' across head/meta/wordmark/footer — enforces MEMORY brand-stem rule","body":""},{"hash":"8a316e9","date":"2026-05-13 06:02:32 -0700","author":"Steve Abrams","subject":"brand: <title> uses domain stem 'goldleafwallpaper' (was 'Atelier Aurum') — enforces MEMORY brand-stem rule","body":""},{"hash":"ad7d03a","date":"2026-05-11 02:22:05 -0700","author":"Steve Abrams","subject":"fleet-grid refine: chip_uniform_aspect (goldleafwallpaper)","body":""},{"hash":"483fc17","date":"2026-05-11 02:20:02 -0700","author":"Steve Abrams","subject":"snapshot before fleet-grid refine tick 4","body":""},{"hash":"2966059","date":"2026-05-07 19:37:40 -0700","author":"Steve Abrams","subject":"Goldleaf: ns-header + Atelier Aurum + ghost sample-btn (recovered after deploy mismatch)","body":"Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>"},{"hash":"ff9e71e","date":"2026-05-07 15:03:40 -0700","author":"Steve Abrams","subject":"Kamatera deploy confirmed, CNCP updated, overnight log appended","body":""},{"hash":"8d20538","date":"2026-05-07 15:02:09 -0700","author":"Steve Abrams","subject":"DW-spec rebuild: Bottega Veneta aesthetic, 1957 products, dark/light toggle, density slider, GA4 G-NP93HLD33N","body":""}]}