get eval evidence
get_eval_evidenceDownload a signed evidence bundle for a completed eval run with verdicts, judge calibration, sample lineage, refusals, and audit attestation to share with reviewers or auditors as one verifiable JSON.
Instructions
Download the forwardable proof bundle for a DONE eval run — verdict, frozen judge calibration and certificate, per-sample verdict lineage, refusal ledger events and an audit hash-chain attestation, optionally with the embedded CI-gate decision — so a customer can hand a reviewer or auditor one signed JSON that links claim to instrument to data. GET /v1/evals/{id}/evidence (API-key scope: read). Returns: 200 bundle (snake_cased): {signature|null, unsigned?:true (when no signing secret is configured), bundle_v:1, generated_at, run:{id, workspace_id, name, eval_kind, status:"DONE", created_at, sample_count, baseline_model, candidate_models, judge_model, rubric_type, sample_filters, assertions}, results (verdict verbatim), gate:{params, verdict}|null (only when at least one gate param was given), instrument:{judge_model, judge_prompt, criterion_snapshot, certificate|null, note|null}, samples:{count, note, lineage:[{sample id, every verdict with the ordering that measured it ("ab"/"ba" pairwise halves, "abs" absolute, "sim" screening similarity), prompt/answers only with with_content}]}, content:{included, reason}, refusals:{window_days, scope, count, complete, events:[{kind, subject, reason, created_at}]}, attestation:{ok, checked_rows, head_seq, problems:[{seq, kind, detail}], acknowledged, window:{since, until, from_seq}|null, chain_head:{seq, last_hash}|null, statement}}. Notes: 404 for a run outside this key's workspace. 412 {code:"precondition_failed"} for any run that is not DONE (PENDING/RUNNING/ERROR/CANCELLED) — fail closed like the gate; poll until DONE. with_content silently degrades (never errors) when request logging is off. Read-only, no spend.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The eval run id (must be DONE). | |
| model | No | Restrict the embedded gate checks to one arm/model key. | |
| min_win_rate | No | 0..1. Embed the same gate evaluation as GET /v1/evals/{id}/gate: every candidate's win-rate CI lower bound must clear this. Values outside 0..1 or non-numeric are ignored. | |
| with_content | No | Pass the literal string "true" to include sampled prompts and generated answers in samples.lineage. Honoured only when the workspace has request logging (content storage) enabled; otherwise lineage stays ids/verdicts only and content.reason explains why. Default: false. | |
| min_pass_rate | No | 0..1. Criterion runs: corrected pass-rate CI lower bound (observed CI when the judge is unvalidated) must clear this. | |
| noninferiority_margin | No | 0..1. The certified switch test (see get_eval_gate). | |
| min_assertion_pass_rate | No | 0..1. Exact all-assertions pass rate must clear this. |