# Evidence Agent Handoff Reference

This is a discoverable description of the final runner-owned handoff. Normal
Evidence Agents must not read it: they write one provider plan and return only
the runner-owned batch path. The Provider Executor invokes the helper and the
runner materializes the handoff. Read this file only when the
runtime explicitly requests handoff-schema debugging. Reading it never
authorizes an agent to create, patch, or reinterpret the handoff.

The runner materializes one
`auto-oncall-diagnostic-child-evidence-v2` object after validating the provider
batch:

```text
schemaVersion: auto-oncall-diagnostic-child-evidence-v2
scenarioId: <selected scenario id>
completion: complete | partial
timeWindow: <canonical runtime window>
observations:
  - statement: <neutral bounded fact>
    source: provider | supplied
    evidenceRefs: [<canonical compact report ref>]
counterEvidence:
  - statement: <neutral bounded fact>
    source: provider | supplied
    evidenceRefs: [<canonical compact report ref>]
queryCoverage:
  - queryId: <runtime-declared query id>
    status: complete | verified_empty | unexplained_empty | unclassified_empty | partial | failed | not_run
    evidenceRefs: [<canonical compact report ref>]
gaps:
  - <one exact unavailable or unresolved evidence dimension>
errors:
  - queryId: <runtime-declared query id or null>
    code: <bounded provider or validation code>
    message: <compact non-sensitive description>
```

Dynamic enums, limits, evidence-reference admission, and exact required fields
remain canonical in the backend schema and parser. This document is for field
discovery only; it is not a substitute validator or an agent output template.

For metrics, `verified_empty` means the plan declared a legitimately sparse
metric under a trusted target/window/selector contract. `unexplained_empty`
means a common expected baseline returned no series and its one same-round
selector/label validation still did not produce data or could not be safely
executed. `unclassified_empty` means normal sparsity or selector correctness was
not established. The latter two are evidence gaps, never counter-evidence.
A rejected or nonexistent metric family remains `failed`.
