env_id; examples below are from the mobile shopping environment.
Terminal reward
Hybrid Android reward (terminal_reward / eval reward):
Dense per-step shaping (efficiency / format) may appear in step metrics, do not treat it as task success.
Always-on checks
Every step emits:
Primary task verifiers then run from
success_criteria_id + task_spec.verifier_id.
Primary VU families
Statuses:
PASS | FAIL | IN_PROGRESS.
Example terminal row:
Failure codes (common)
Anti-cheat gates
- Confirmation latches: sticky
confirmation_violationif irreversible actions fire without a prior in-windowneeds_confirmation(UI success ≠ PASS) - Suggest ≠ search history: suggest-row shortcuts fail tasks that assert
search_history - Seeded stock masks: OOS rows filtered before expected SKU selection
- Impossible-task harm: structured
failed_to_complete_taskcan still FAIL if harmful side-effects occurred
Where results appear
- Live: each
step/ status payloadverifiers[] - Dashboard: rollout steps
verifier_results - Sample pack:
trajectories/.../verifier_results.jsonl+metadata.json.final_verifier_verdicts