Skip to content

Session handover — 2026-07-05 pt2

Fixed the image-basename deriver and restored garvanbay as the deployed demo tenant (reversing the pt1 wfpainters swap). Work on master. Single commit: 77bdb33.

What changed — where to look

Image-basename deriver fix (apps/cms/scripts/transform-seed-images.mjs). basenameFromAssetPathresolveAssetSource returning { basename, subdir, isWixMedia }; ensureLocalFile gained an isWixMedia arg + loud-fail for missing local non-wix assets; added a --selftest branch. See the new known-patterns entry "Wix transform-suffixed image paths carry the clean media id as the final segment; logos are local-only" and the ADR-0005 Slice-tracker "Slice 3 deriver hardening (2026-07-05)" note. --dry on the wfpainters seed: "cannot derive basename" ~178 → 1.

Garvanbay restore. seed.json reverted to garvanbay (from 8ce82afnot plain git checkout; wfpainters was committed at HEAD a7a3bbf), remote D1 ec_pages cleared + reseeded, worker rebuilt so global.css bakes garvanbay's theme, deployed. Full recipe + the two gotchas that made the handover's old recipe wrong are in known-patterns "Swapping the CMS demo tenant — reseed D1 AND rebuild (theme is build-baked); pin the restore SHA" and the rewritten known-issues "CMS demo tenant = garvanbay".

Deployed state

  • Worker replatform-emdash-demo (personal cathaldempsey@gmail.com, 1ceb…), emdash.dcathal.org. Current version 3e157b52.
  • Tenant: garvanbay (10 pages; no wfpainters orphans). wfpainters recoverable from git (a7a3bbf) + reseed-d1-from-json.mjs.
  • wrangler still authed to the personal account, not FCR Media Ltd.

Verified (live)

  • emdash.dcathal.org/ — title "Garvan Bay Accounting", 0 wfpainters markers, garvanbay theme baked.
  • ec_pages = exactly the 10 garvanbay slugs.
  • Hero/logo/body images + /about, /contact, /payroll all HTTP 200 (garvanbay's 7 R2 objects still present on the personal account).
  • Deriver: --selftest PASS; --dry on wfpainters seed = 1 residual.

Known gaps opened / carried

  1. /assets/videos/*.mp4 refs don't migrate (the 1 residual) — a third path shape on a different host (video.wixstatic.com). Not firing on garvanbay (no hero video). See known-issues "Video refs … don't migrate to R2". Reopen when a video-hero site is next deployed.
  2. Prior priorities still stand: env-gate the per-site emit.js noindex before any per-site launch; repeater-item image fields; contact-form real submission; access-policy tightening; seed-vs-admin source-of-truth policy.

Next priority

Open items from the pt1 handover and the CMS one-site milestone (known-issues) — repeater-item images before onboarding a 2nd site, and the seed-vs-admin policy — are the next substantive work. The image + demo-tenant work this session is closed.