Outcome
Freeze a portable evidence format that separately establishes byte integrity, trusted signing origin, and control assurance quality.
Contract requirements
Define allowlisted evidence schema v2 and stable collection/timestamp ordering.
Freeze canonical UTF-8 bytes and completion-event cutoff behavior.
Define a domain-separated signing statement containing evidence digest, case ID, schema version, completion event hash, and key ID.
Use Ed25519 with a detached deterministic manifest.
Require an operator-supplied trusted public key or pinned fingerprint by default.
Define signed, unsigned, legacy-v1, digest-mismatch, signature-failure, and trust-anchor-mismatch results.
Define key loading, rotation, encrypted-key behavior, and signing-required failure semantics.
Freeze CLI exit codes and machine-readable output.
Publish cross-platform golden evidence/signature vectors and tamper cases.
Acceptance criteria
A verifier can validate transferred evidence without database access.
A bundled public key is never silently treated as trusted origin.
Historical evidence remains verifiable after key rotation.
Re-export at the same completion cutoff produces identical evidence bytes.
Private signing material cannot enter SQLite, logs, evidence, fixtures, or distributions.
Evidence v1 remains readable and is accurately labeled legacy_digest_only.
Planning source
.dev/v2/EVIDENCE_V2_SPEC.md.
Dependencies
Blocked by #8 . Pilot evidence-consumer and key-ownership findings must be reflected before implementation issues open.
Outcome
Freeze a portable evidence format that separately establishes byte integrity, trusted signing origin, and control assurance quality.
Contract requirements
Acceptance criteria
legacy_digest_only.Planning source
.dev/v2/EVIDENCE_V2_SPEC.md.Dependencies
Blocked by #8. Pilot evidence-consumer and key-ownership findings must be reflected before implementation issues open.