You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Validates the manifest against an opened session without committing
any change. Useful for CI gates that want to catch typos and broken
bundle paths before the real apply runs.
What gets checked:
* Parse — schema is well-formed (deny_unknown_fields, missing
required fields, wrong types — same as a real run).
* Local source files exist — every `sources` entry in `insert` and
every `replacement` in `replace` is resolved against the manifest
directory and verified.
* Step shape — `insert` with multiple sources but `directory: false`
is rejected (since the real run would too).
What's intentionally left to the real run:
* Glob match counts — `remove` / `replace` patterns are matched
against the live data tree, so we can't tell at validate-time
whether they'll match zero files.
* `read-field` assertions — they depend on the cumulative effect
of earlier (unapplied) steps.
The session directory is left bit-for-bit unchanged.
Tests:
* 5 new unit tests in `check_step` covering missing-source,
existing-source, multi-source-without-directory-flag,
missing-replacement, and metadata-op no-ops.
* 2 new integration tests: dry-run on a valid plan leaves every
control field and data file untouched; dry-run on a plan with a
missing source file surfaces the error.
docs/session-manifest.md gains a "Dry runs" section spelling out
exactly what is and isn't checked.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
0 commit comments