Skip to content

CR-128: Validate evaluation handoff bundle integrity#101

Merged
coreytshaffer merged 1 commit into
mainfrom
codex/cr-128-evaluation-handoff-integrity-validator
Jul 17, 2026
Merged

CR-128: Validate evaluation handoff bundle integrity#101
coreytshaffer merged 1 commit into
mainfrom
codex/cr-128-evaluation-handoff-integrity-validator

Conversation

@coreytshaffer

Copy link
Copy Markdown
Owner

What changed

  • Add read-only tc eval validate-handoff --bundle .
  • Enforce the closed evaluation_handoff_manifest.v0 schema, fixed safe paths, exact declared inventory, non-symlink/non-reparse traversal, counts, and SHA-256 byte agreement.
  • Validate fixture and actual contracts, fixture membership, and persistent privacy invariants.
  • Add focused coverage for tampering, path attacks, partial actual coverage, privacy failures, and no-mutation behavior.
  • Document the CR-128 boundary and update the evaluation handoff contract, backlog, and changelog.

Why

CR-127 creates deterministic unscored handoff bundles, but intentionally left validation of an existing bundle to a separate slice. CR-128 closes that gap before any future external evaluator adapter is considered.

Impact

Validation is deterministic and read-only. It does not repair or normalize bundles, compare expected and actual decisions, score cases, invoke an evaluator, model, backend, or network, write to the ledger, or convey approval. Hash agreement detects drift relative to the bundled manifest; it does not establish authenticity, provenance, safety, or correctness.

Validation

  • Focused evaluation regression: 86 passed, 1 skipped.
  • Full suite: 997 passed, 3 skipped.
  • git diff --check: clean.

@coreytshaffer
coreytshaffer marked this pull request as ready for review July 17, 2026 08:29
@coreytshaffer
coreytshaffer merged commit dc21777 into main Jul 17, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant