Story-2498 · functions lane
A model score cannot overrule document bytes
The hard-zero wall
captured AgentCore result
↓ strict RecordedRun contract
deterministic envelope assembler
↓
schema · V-CITE · coverage · material-finding · normalization
↓
clean result == poisoned-twin result
↓
quality receipt
| Gate | What fails |
|---|---|
| V-CITE 100% | One quote differs from canonical UTF-8 bytes. |
| Coverage | No real scheduler batch receipt or an incomplete page set. |
| Collapse, never drop | A known material finding is absent from the admitted envelope. |
| Assertions | A labeled date is not ISO or a labeled amount is not numeric. |
| Injection refusal | Embedded instructions change grades, coverage, or findings against the clean twin. |
Value is exclusive and cost is actual
Candidate IDs join each admitted finding back to its proposer. The scorer groups semantically identical findings across the matter-16 runs. A proposer receives incremental credit only when no other evaluated proposer supplied that finding. Shared findings and Sol additions receive no proposer credit.
Costs come only from provider-actual cost_micros receipts with unique generation IDs. Missing receipts remain visibly NOT MEASURED; static token-price estimates cannot pass the measured gate.
Model placement stays intact
The panel still runs only in the agents repository's AgentCore runtime. This functions-side harness consumes captured requests, effects, scheduler truth, and usage events. Muse Spark and Kimi K3 are report rows for eval-only challenger runs; they never enter the production lineup.