[object Object]

← 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 →