1 / Discovery
Capture the tool contract the agent actually received
Record the protocol version, advertised tool, strict input schema, output schema, annotations, and versioned game action schema used for the run.
Do not grade an agent against a schema it never saw or silently repair invalid arguments in the transport. A contract rejection is evaluation evidence.
2 / Checks
Separate tool selection from argument correctness
- Selection: did the agent choose the tool that can perform the current job?
- Grounding: did it read the current resource and legal actions first?
- Arguments: did the payload satisfy the exact strict schema?
- Concurrency: did it carry the current expected version?
- Retry identity: did the key represent one logical decision?
3 / Readback
Verify the authoritative effect instead of trusting narration
Use the mutation response and a qualified record read to confirm the accepted action, resulting state, event sequence, and point entries.
The agent's final message is not transaction evidence. If the tool returns a rejection or an uncertain transport result, preserve that state and follow the recovery contract before declaring success.
4 / Result
Report each tool-use layer independently
| Layer | Example failure | Evidence |
|---|---|---|
| Selection | Mutating before reading | Ordered tool sequence |
| Schema | Unknown or missing field | INVALID_INPUT response |
| State | Stale expected version | CONFLICT and current version |
| Effect | Claimed success without accepted state | Authoritative response and audit |