← back to Thesetdecorator
backlog: loop #4 (canonical-dedup fix) + queue deploy for Steve
619da855ce7b7d1a2bdc4206081666a452503ca3 · 2026-06-03 09:20:23 -0700 · Steve
Files touched
Diff
commit 619da855ce7b7d1a2bdc4206081666a452503ca3
Author: Steve <steve@designerwallcoverings.com>
Date: Wed Jun 3 09:20:23 2026 -0700
backlog: loop #4 (canonical-dedup fix) + queue deploy for Steve
---
YOLO_BACKLOG.md | 24 +++++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)
diff --git a/YOLO_BACKLOG.md b/YOLO_BACKLOG.md
index 3ac689f..65c4a40 100644
--- a/YOLO_BACKLOG.md
+++ b/YOLO_BACKLOG.md
@@ -74,5 +74,27 @@ reversible local commit** marked `[x]` w/ hash, then ScheduleWakeup ~1800s.
JS-injected templates with unknown runtime intrinsic size (several already use
`width:100%`/`aspect-ratio`). Forcing static dims would regress, not help.
+## Done (cont.) — 2026-06-03 loop #4 (server-side SEO correctness)
+- [x] **double-canonical fix in renderWithSEO** — `6c2469c` · DTD verdict **B** (Claude+
+ Codex 2/2, Qwen errored). 16/17 PUBLIC_PAGES served TWO conflicting canonical tags on
+ their clean-URL routes (injected `/slug` + static `/slug.html`). Fix: strip any static
+ canonical from the template before injecting, so the server is the single source of
+ truth in the preferred no-.html form. Verified on a free port — all 17 clean routes now
+ emit exactly one canonical; static `.html` paths unaffected; self-heals for future
+ PUBLIC_PAGES additions. **Local commit only — NEEDS DEPLOY to affect prod (see queued).**
+
+### Audited clean / false-alarm — 2026-06-03 (loop #4)
+- **robots.txt / sitemap.xml / 404**: NOT missing — server.js serves all three
+ dynamically (`/sitemap.xml` L1973, `/robots.txt` L1989, styled catch-all 404). The
+ "missing static files" were a false alarm.
+- **target=_blank rel=noopener**: 0 unsafe links site-wide. Clean.
+
## Notes / queued-for-Steve (gated — do NOT auto-do)
-- (none yet)
+- **DEPLOY thesetdecorator** to land the canonical-dedup server fix (`6c2469c`) 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.
+- **(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,
+ not an autonomous loop edit.
← 6c2469c TSD SEO fix: dedupe canonical in renderWithSEO (DTD verdict
·
back to Thesetdecorator
·
TSD SEO: inject Home>PageTitle BreadcrumbList JSON-LD on int 77538fb →