Handbook
game_move_parse v1
One JSON object with required status in selected | ambiguous | illegal_or_unmatched:
Invariants
- Any
move_idor list entry produced from this task must appear verbatim in caller-suppliedlegal_moves. Invented ids areSchemaFailureat validation.
Input
| Field | Type | Notes |
|---|---|---|
player_view |
JSON object | Seat-filtered projection; see hidden-info note below |
legal_moves |
non-empty list | Each entry must include move_id; optional label, action_type, args echoes |
utterance |
string | NL to classify |
timeout_sec, temperature |
optional | Pass-through knobs |
Output
One JSON object with required status in selected | ambiguous | illegal_or_unmatched:
selected:move_id(one input id),confidencein[0,1](not boolean / NaN), optionalreasonambiguous:candidate_move_idsnon-empty duplicate-free subset of legal ids; optionalreasonillegal_or_unmatched:suggested_move_idssubset (may empty); optionalreason
Hidden information
Orchestrator must populate player_view so undisclosed opponent secrets never appear under public/private for the active seat unless product policy intentionally allows (private is still visible to prompts—exclude sensitive material).