← back to Thesetdecorator
backlog: loop #5 (interior breadcrumbs) + catalog ItemList dead-code finding for Steve
9ebedbdce2cfb81e21014dc6b2e4084bbedc3be5 · 2026-06-03 09:54:40 -0700 · Steve
Files touched
Diff
commit 9ebedbdce2cfb81e21014dc6b2e4084bbedc3be5
Author: Steve <steve@designerwallcoverings.com>
Date: Wed Jun 3 09:54:40 2026 -0700
backlog: loop #5 (interior breadcrumbs) + catalog ItemList dead-code finding for Steve
---
YOLO_BACKLOG.md | 22 +++++++++++++++++++---
1 file changed, 19 insertions(+), 3 deletions(-)
diff --git a/YOLO_BACKLOG.md b/YOLO_BACKLOG.md
index 65c4a40..92a1154 100644
--- a/YOLO_BACKLOG.md
+++ b/YOLO_BACKLOG.md
@@ -89,11 +89,27 @@ reversible local commit** marked `[x]` w/ hash, then ScheduleWakeup ~1800s.
"missing static files" were a false alarm.
- **target=_blank rel=noopener**: 0 unsafe links site-wide. Clean.
+## Done (cont.) — 2026-06-03 loop #5 (structured data)
+- [x] **BreadcrumbList JSON-LD on interior pages** — `77538fb` · DTD verdict **A** (Claude+
+ Codex 2/2). Extended renderWithSEO's generic else-branch to inject a Home > PageTitle
+ BreadcrumbList on the ~14 flat interior PUBLIC_PAGES that had no structured data (about,
+ resources, itinerary, mood-board, for-studios, art-prints, videos, in-memoriam, attorneys,
+ fancy-search, video-demo, license-terms, request-demo). Name from `<title>` minus site
+ suffix, entities decoded. Verified valid JSON + correct names + canonical still single +
+ no double-markup; catalog/best-sellers untouched. **Local only — rides the queued deploy.**
+
## Notes / queued-for-Steve (gated — do NOT auto-do)
-- **DEPLOY thesetdecorator** to land the canonical-dedup server fix (`6c2469c`) on prod —
+- **DEPLOY thesetdecorator** to land BOTH server-side SEO commits on prod —
`cd ~/Projects/thesetdecorator && bash ~/Projects/_shared/scripts/deploy.sh` (or `/deploy`).
- Server-only change; safe; verified locally. Until deployed, prod still serves the double
- canonicals on the 16 PUBLIC_PAGES clean-URL routes.
+ Lands `6c2469c` (canonical-dedup fix) **and** `77538fb` (interior-page breadcrumbs) in one
+ deploy. Both server-only, verified locally on a free port. Until deployed, prod still
+ serves the double canonicals on 16 clean routes + no interior breadcrumbs.
+- **FINDING (pre-existing, not auto-fixed):** the dedicated `/catalog` route (server.js ~L182)
+ serves catalog.html directly and never calls renderWithSEO, so catalog's rich ItemList
+ JSON-LD (the `if (slug==='catalog')` branch, ~L283) is **unreachable dead code** for the
+ `/catalog` URL. catalog shows 0 structured data. Fixing means either routing catalog
+ through renderWithSEO or moving the ItemList injection into the L182 route — a code-path
+ rewire I left for you (riskier than a loop edit; the if-branch touches catalog data load).
- **(optional, architectural — your call)** The `.html` URLs and clean URLs are both
indexable (each self-canonicals to its own form). Truly ideal would be picking ONE form
and 301-redirecting the other. Left untouched — that's a routing-policy decision for you,
← 77538fb TSD SEO: inject Home>PageTitle BreadcrumbList JSON-LD on int
·
back to Thesetdecorator
·
TSD SEO: noindex,nofollow on 5 verified-internal tool pages 97279e5 →