Skip to content

Session handover — 2026-07-15

A follow-on to 2026-07-14 pt4. The video segmentation slice (pt4's agreed workstream #1) shipped — all 27 of WCP's missing videos now have measured section homes, and the render backlog is three buckets, not 27 tickets. Instrumentation only: no worker deploys, no D1 writes, no score movement.

Where the two sites now stand

site verdict why
WCP HOLD videoDebt only — unchanged. S/T/G_det proven byte-identical on the stored artifacts (82.2 / 100 / 84.4, composite 87.2); the scorecard's live/ours capture pair untouched.
garvanbay HOLD criticalSectionDropped (/contact has no hero) — unchanged, untouched all session.

What shipped

  • Capture schemaVersion 7→8 (lib/capture-section-backgrounds.js): mediaRefs.videos[] gain sectionId + attributedBy. The join that fires is the poster id, not the mp4 URL — URL containment attributed 0/36 because Wix keeps every mp4 URL in page-level wix-warmup-data/inline script blobs; the guarded media-id pass homed 28/28. See the new known-patterns entry "A video's SECTION HOME is its POSTER id, not its mp4 URL".
  • lib/video-segmentation.js (+ .validate.mjs, 18 checks): joins the attributed ids through structural-diff#alignPage (agrees with S/C by construction) to the build sidecar's block names. Gates on version + the sectionAttribution evidence key itself (no CAPTURE_REQUIREMENTS row — nothing stamps from it). Report: builds/waterfordcountypainters.ie/video-segmentation.json.
  • Both reference captures re-run and PERSISTED at v8 (the capture-plane shipping rule): WCP 25/25 pages carry the key, 27 ids / 28 placements attributed, 0 unattributable; garvanbay 10/10, 0 videos — faithful no-op.
  • originalNameOf filename-grade gate (apps/cms/scripts/wix-api.mjs + loud fallback in transform-seed-images.mjs): the folder-label Misc can no longer become provenance for 19/46 videos; the known-issues precondition on any video migration is closed (entry deleted; lesson in known-patterns "A provenance getter that FALLS BACK to a display label…").
  • Additivity proven, not assumed: scorecard re-run on the same stored artifacts is byte-identical ex-timestamp; asset-debt.validate.mjs +2 checks prove the veto ignores the new fields.

The ranked render backlog (the slice's deliverable)

From video-segmentation.json — see the updated known-issues entry "WCP asset debt … SEGMENTED 2026-07-15" for the table: fcr.gallery ×13 (gallery items need video support — one block type is half the debt), fcr.about ×11 (a video slot on the content sections), fcr.hero ×1 (machinery exists), 3 dropped-live riding on the home-FAQ heading-extraction bug (which now pays twice — see its updated entry).

Next

  1. Gallery video items (13 of 26) — the biggest single render bucket; also the page where Wix Pro-Gallery already holds the worst S (44.4).
  2. fcr.about video slot (11 of 26) — one adapter/block decision covers every service page.
  3. garvanbay /contact hero — its HOLD, still untouched.
  4. Still open from earlier: home-FAQ heading extraction (now double-motivated), aligner role-aware anchoring, Slice 6 calibration, operator editability (upstream emdash save race).

The through-line

pt4's corollary was measure the filing before scoping it. This session's is the same rule at the design level: measure the join before building it. The scoped containment join was measured to attribute nothing before it shipped as the answer; one live probe found the poster identity, and the pre-registered "risk" became the design. Acquisition without section homes stayed motion-without-progress — and now the homes exist, acquisition is unblocked bucket by bucket.