How the live demo works

Website Change Demo publishes three controlled versions of the same origin. Each version is a complete static snapshot you can hot-swap while the fixture server keeps serving HTTP responses.

v1-baseline

The reference snapshot. Crawl this first and wait for site-health analysis to finish before switching versions. It includes /products.html and excludes the pages added only in the changed state.

v2-changed

Introduces deliberate differences: three added pages, one removed page, metadata updates, a canonical mismatch, duplicate title and description cases, a broken internal link, a privacy-page noindex directive, and navigation that points to new documentation.

v3-restored

An exact copy of v1-baseline HTML. Switching here after v2 lets you verify that change history records reversals — one added page and three removed pages relative to v2, plus resolved metadata and indexability findings.

Consecutive completed crawls

Comparisons are made between consecutive completed crawls with compatible settings. A running crawl must not replace the latest comparable pair. Always wait for analysis to finish before reading Site Changes.

Atomic version switching

The switch-version.sh script replaces the live/ directory atomically on the host. Because the fixture container bind-mounts that directory, the next HTTP request serves the new version without restarting Node or Docker.

Deterministic test data

Fixed page sets and intentional SEO deltas make automated and manual tests reproducible. v3 intentionally restores v1 crawler-relevant content so v2 → v3 comparisons mirror v1 → v2 in reverse.

Read the full reference in documentation or inspect expected-changes.json in the repository.