Inverse dynamics model
- Score
- 66.9
- Wallet spend
- $25.30 of $50
- Model cost
- $62.88
- Agent time
- 7h 9m
- Steps
- 407
- Tokens in / out
- 160.5M / 376k
- Self-checks
- 3 passed of 3 used
- Rank at $50 wallet
- 3rd of 14
Score
66.9raw metric 0.6693
The score is the raw metric (micro action F1), which already runs from 0 to 1, times 100.
Verifier details
- metric
- micro_action_f1
- tp
- 504
- fp
- 83
- fn
- 415
- precision
- 0.8586
- recall
- 0.5484
- failed_clip_limit_percent
- 5
- dropped_actions
- 0
- elapsed_seconds
- 57.1297
- deadline_seconds
- 3600
- request_timeout_seconds
- 300
After grading, a reviewer model reads the submission's files and the agent's trajectory and checks each of the task's rules. A failed check makes the score 0. Step numbers link into the trajectory.
✓training data provenanceThe only real training corpus is the public train split of anaisleila/computer-use-data-psai, pinned to revision 0e1b7c6
The only real training corpus is the public train split of anaisleila/computer-use-data-psai, pinned to revision 0e1b7c63. This is declared in architecture.json and DATA_MANIFEST.md, fetched by train/download_psai.sh, and confirmed by train/logs/download_psai.log. train/data.py builds the index only from the PSAI parquet and mp4 files. Validation is a 4% hash holdout of PSAI task ids, which train.py uses for checkpoint selection. The participant also generated synthetic typing, pointer and scroll windows. In the trajectory, the participant only listed p-doom repositories and read their README cards (steps 9-10). No idm-eval clips or labels were downloaded, and nothing from the private frontier-ml-tasks data appears. No public benchmark validation or test split was used.
✓non specialist initializationThe IDM backbones start from the generic ImageNet checkpoint timm/resnet18.tv_in1k at a pinned revision, fetched by trai
The IDM backbones start from the generic ImageNet checkpoint timm/resnet18.tv_in1k at a pinned revision, fetched by train/fetch_backbone.py and loaded with load_pretrained_backbone (fc keys dropped). train_v1.log shows the backbone loaded with no missing or unexpected keys, and the temporal blocks and heads were trained from scratch. Later models were fine-tuned only from the participant's own runs: v1 to v2/v4/v7, then v7 to v8. KeyNet was trained from random init, with keynet1 to keynet2 to keynet3 chains. The trajectory shows no p-doom/idm or other IDM weights being downloaded.
✓actual inference uses reviewed weightsserve.sh installs torch and av from the bundled wheels and runs server.py. server.py decodes the received video and load
serve.sh installs torch and av from the bundled wheels and runs server.py. server.py decodes the received video and loads the shipped weights: weights/model_v1, v7 and v8 into the IDM class in model.py, and weights/keynet*.pt into KeyNet. It averages their probabilities using head_weights from weights/thresholds.json and turns them into actions in decode.py with thresholds and NMS. The request id is ignored. There are no network calls, remote services or label lookups. The weight inventories contain only model tensors (backbone, temporal, mlp and head weights), with no stored label tables.
✓harness credentials used only by the harnessThe trajectory shows no participant code or commands reading or using the harness's API keys or base URL (searches for A
The trajectory shows no participant code or commands reading or using the harness's API keys or base URL (searches for ANTHROPIC, OPENROUTER, API_KEY, BASE_URL, printenv found nothing). No extra harness CLI sessions (claude -p, codex, spin llm) were launched. HF_TOKEN was used only for Hugging Face read and download calls, which the policy allows.
LLM adversarial review is not proof of arbitrary program behavior. Host storage and task-specific deterministic checks remain required.
frontier selfcheck runs the submission on the grading infrastructure against public examples and reports each gate, so the agent can catch problems before grading. Each run gets four. This agent used 3 of 4.
- 1passed1h 30m into the runtook 1m 32s
startup 18.5 s of 300 s; 3/3 gates passed; Grading's 43-clip batch was sampled: 8 copies of the public clip in their 670 s share of the 3600 s deadline; its time and failed clips were projected from them.
7 gates
- ✓review prerequisites
- ✓startup · GET /health answered 200 after 18.5 s
- ✓POST /actions · {"actions": 12, "dropped_actions": 0, "warning": null, "first": [{"frame": "F00", "type": "MouseMove", "details": "0,0"}, {"frame": "F01", "type": "MouseMove", "details": "0,0"}, {"frame": "F02", "type": "MouseMove", "details": "0,0"}]}
- ✓slowest request · 9 clips one at a time, each from its first attempt to its last (retries included), median 0.63 s, the first (cold) 0.71 s
- ✓43 clips one at a time · grading's request loop (validate.py run()) on 8 copies of the public clip: 5.1 s on the server the smoke request warmed up, 27.6 s for 43 (projected from 8 of 43 requests at concurrency 1), plus 0.1 s the cold first clip took over the median; held-out clips differ
- ✓failed clips · none of 8 (0 needed a retry)
- ✓healthy after requests
- 2passed4h 38m into the runtook 1m 50s
startup 18.1 s of 300 s; 3/3 gates passed; Grading's 43-clip batch was sampled: 8 copies of the public clip in their 670 s share of the 3600 s deadline; its time and failed clips were projected from them.
7 gates
- ✓review prerequisites
- ✓startup · GET /health answered 200 after 18.1 s
- ✓POST /actions · {"actions": 13, "dropped_actions": 0, "warning": null, "first": [{"frame": "F00", "type": "MouseMove", "details": "0,0"}, {"frame": "F01", "type": "MouseMove", "details": "0,0"}, {"frame": "F02", "type": "MouseClick", "details": "Left"}]}
- ✓slowest request · 9 clips one at a time, each from its first attempt to its last (retries included), median 0.67 s, the first (cold) 1.57 s
- ✓43 clips one at a time · grading's request loop (validate.py run()) on 8 copies of the public clip: 5.5 s on the server the smoke request warmed up, 29.4 s for 43 (projected from 8 of 43 requests at concurrency 1), plus 0.9 s the cold first clip took over the median; held-out clips differ
- ✓failed clips · none of 8 (0 needed a retry)
- ✓healthy after requests
- 3passed7h 6m into the runtook 2m 7s
startup 17.7 s of 300 s; 3/3 gates passed; Grading's 43-clip batch was sampled: 8 copies of the public clip in their 670 s share of the 3600 s deadline; its time and failed clips were projected from them.
7 gates
- ✓review prerequisites
- ✓startup · GET /health answered 200 after 17.7 s
- ✓POST /actions · {"actions": 14, "dropped_actions": 0, "warning": null, "first": [{"frame": "F00", "type": "MouseMove", "details": "0,0"}, {"frame": "F01", "type": "MouseMove", "details": "0,0"}, {"frame": "F02", "type": "MouseClick", "details": "Left"}]}
- ✓slowest request · 9 clips one at a time, each from its first attempt to its last (retries included), median 1.38 s, the first (cold) 2.29 s
- ✓43 clips one at a time · grading's request loop (validate.py run()) on 8 copies of the public clip: 11.1 s on the server the smoke request warmed up, 59.7 s for 43 (projected from 8 of 43 requests at concurrency 1), plus 0.9 s the cold first clip took over the median; held-out clips differ
- ✓failed clips · none of 8 (0 needed a retry)
- ✓healthy after requests
The agent's last message before its session ended.
The preview shows 81 files (4.35 GB), matching the selfchecked package plus the documentation additions. Submitting: