Description
The signature records field paths, types and counts and never a value from a transcript, which is what allows the baseline to be committed to a public repository. The existing test already enforces that; this task is the induction and diff themselves.
An absent record type is a finding, not a default.
Acceptance Criteria
- #1 ca2profile induces a full schema from a corpus, including example value ranges, and its output is never committed
- #2 ca2probe induces a content-free signature and diffs it against the embedded baseline
- #3 Findings are classified breaking, new or info, and a record type present in the baseline but absent from the scan is a finding
- #4 Exit codes hold the contract the justfile depends on: 0 clean, 1 at or above -fail-on, 3 nothing to scan
- #5 -sampled is faster and its output states that it cannot prove a shape is absent
- #6 The existing content-freeness test passes against a real induced signature, not only the empty one
Definition of Done
- #1 just check passes: fmt-check, lint, build, test-short, probe-ci, dashboard-check and docs-links all clean
Implementation Plan
Wave 1 lane 7: implement unhandled-record accounting, signature induction and probe/profile commands within assigned files; validate empty-corpus exit and content-free signatures; root integrates and runs the final gate.
Final Summary
Content-free profiling and drift probes implement severity and exit contracts; the real 48-file, 69,466-record corpus gate passed.