# Attestation Verifier Rehearsal — Excititor Status: **Ready for implementation** (2025-11-22) Owners: Excititor Attestation Guild · Evidence Locker Guild Scope: Dry-run `IVexAttestationVerifier` against current Evidence Locker bundles to ensure Excititor attestation endpoints ship with deterministic verification. ## Test Matrix - Inputs: Evidence Bundle v1 sample (`docs/samples/evidence-bundle/*`), mirror bundle thin sample (`out/mirror/thin/mirror-thin-m0-sample.tar.gz`). - Verification steps: 1. Validate DSSE envelope signature and Rekor entry (if present); offline mode skips transparency but records `rekorSkipped=true`. 2. Verify manifest hash tree against payload NDJSON files; fail on first mismatch. 3. Assert policy hash matches Policy Engine overlay hash (placeholder `policyHash` captured for now). 4. Emit structured result JSON: `{bundleId, verified, dsseVerified, transparencyChecked, manifestRoot, failures[]}`. - Determinism: sorted failure list, timestamps set to supplied `--as-of` flag. ## Deliverables - Harness entry point: `tools/attestation/verifier-rehearsal.sh` (script stub path reserved). - Sample output recorded at `docs/modules/excititor/prep/artifacts/2025-11-22-attestation-rehearsal.json` (to be produced in implementation). - Logging fields to surface in Excititor: `attestationBundleId`, `evidenceBundleId`, `verified`, `failureCode`, `tenantId`. ## Acceptance Criteria - Rehearsal script runs offline using bundled samples and exits non-zero on any verification failure. - Output schema above is referenced by Excititor API tests and Policy attest replay tasks. - Downstream tasks EXCITITOR-GRAPH-21-00x and attestation endpoints can rely on this contract. ## Notes - Satisfies PREP-ATTESTATION-VERIFIER-REHEARSAL-EXCITITOR.