Skip to content

Customer Site Snapshot Status

This page records the current state of DCS visual-editor snapshot capture for standalone site repositories under E:\source\repos. Snapshot capture is driven by each site's .github/workflows/site-deploy.yml, .dcs/site.yaml, .dcs/pages.yaml, and capture script.

Summary

Site repoPagesWorkflow capture stepSnapshot scriptStatus
kept48Yessite/scripts/capture-snapshots.tsConfigured
handyman-bryan / Iron Oak18Yessite/scripts/capture-snapshots.tsConfigured
mi-handyman10Yessite/scripts/capture-snapshots.tsConfigured
just-posh12Yesscripts/capture-snapshots.tsConfigured
kduff-homes / Kim Duff Homes53Yesscripts/capture-snapshots.mjsFixed and validated
resume-blog10Yesscripts/capture-snapshots.tsConfigured
boogie-babies9Yessite/scripts/capture-snapshots.mjsConfigured

Kim Duff Homes fix

Kim Duff Homes was failing most page captures in GitHub Actions because scripts/capture-snapshots.mjs waited for Playwright networkidle. Preview pages can keep telemetry/CMS requests active after the DOM is ready, so the location pages timed out even though the content was available.

The KDH script now:

  • navigates with waitUntil: 'domcontentloaded' and the configured post-load render wait,
  • appends dcs-hide-ribbon before screenshot capture, matching Kinetic Energy PT,
  • uses @duffcloudservices/cms@^0.3.10, which includes preview-ribbon suppression via that query parameter,
  • honors .dcs/targeted-snapshots.json in targeted, full, and skip modes,
  • discovers both data-text-key and data-dcs-text,
  • exits non-zero if any configured page fails, so partial manifests are not treated as successful captures,
  • exposes pnpm run capture-snapshots via package.json.

Validation against https://preview.duffcloudservices.com/kduff-homes-web captured all 53 configured pages successfully, including the blog index, 27 markdown blog posts, and 12 generated topic pages. The run still surfaced content-key hygiene warnings for some pages, especially shared cta.* keys in the DOM that are not registered in .dcs/content.yaml, and several registered content keys that are not currently present in the rendered DOM.

Other validation notes

  • Boogie Babies snapshot capture against https://preview.duffcloudservices.com/boogie-babies captured all 9 configured pages successfully after adding the missing script and Playwright dependency.
  • Boogie Babies type-check and build pass after fixing the malformed .dcs/content.yaml entry and iframe allowfullscreen Booleanish attributes.
  • DCS package versions are aligned to the latest published packages across the active customer/prospect sites and demo sites: @duffcloudservices/cms@^0.3.10, @duffcloudservices/cms-astro@^0.1.1, @duffcloudservices/cms-react@^0.1.1, and @duffcloudservices/cms-angular@^0.1.1.
  • VitePress CSS reset isolation is now applied to custom-page roots for Kim Duff Homes, NateDuff.com, and the VitePress demo site.

Follow-up items

Site repoFollow-up
resume-blogConsider enabling targeted snapshots by default to match newer site workflows.
boogie-babiesReview visual snapshot output after the next preview deployment.
kduff-homesReconcile .dcs/content.yaml with rendered data-text-key / data-dcs-text attributes so snapshot validation warnings reflect only real drift.

Demo repositories

The demo repositories (dcs-demo-1 through dcs-demo-5) have .dcs/pages.yaml metadata, but no declared snapshot scripts. dcs-demo-1 has a workflow section that references snapshots, while dcs-demo-2 through dcs-demo-5 do not currently have a snapshot capture step. Treat these as outside the active customer-site snapshot baseline until demo visual-editor capture is explicitly required.

Duff Cloud Services Documentation