Skip to main content

Manifests and provenance

The bundle documents itself. Nothing in build/ requires tribal knowledge to interpret.

deploy-manifest.md

The operator-facing run book: supported deployment mode, step-by-step run instructions, the validator's findings (must show 0 errors), and the full inventory — list creation order, deferred lookups, indexes, views, formatting and permissions — with phase numbers taken from the same phases manifest deploy.js uses.

assess-manifest.md

The companion to assess.js: what each tier probes and how to read the COMPATIBLE / DEGRADED / BLOCKED verdict.

INDEX.md and checksums.txt

INDEX.md lists every artifact in the bundle with its purpose (including whether demo data was emitted); checksums.txt carries SHA-256 hashes so a bundle can be verified after transfer. Hashes are computed over LF-normalised content, so checking out on Windows does not break verification.

Provenance headers

Every generated script and manifest opens with the same provenance block: source schema (and its modification time), target site, site role, release tag, schema version and generation timestamp. A pasted console transcript therefore records exactly which release produced it. Interpolated values are comment-escaped so a crafted string in an input file cannot break out of the header comment.

Stale clearing

emit_bundle deletes every file it owns before writing — a bundle never contains a stale artifact from a previous build with different flags (for example, a demo-data.js left behind after a build without --seed).