| # | Model | Score | Steps | In tok | Out tok | Avg cost | Avg time |
|---|---|---|---|---|---|---|---|
| 1 | Claude Opus 5.5 | 0.9013 ±0.134 | 540 | 230.4M | 715k | $65.17 | 15.2h |
| 2 | Claude Fable 5 | 0.8532 ±0.069 | 274 | 87.6M | 409k | $117.98 | 9.6h |
| 3 | Claude Fable 5.1 | 0.8369 ±0.053 | 253 | 77.2M | 322k | $46.43 | 4.6h |
| 4 | Claude Opus 5 | 0.8349 ±0.106 | 320 | 137.3M | 529k | $88.41 | 11.8h |
| 5 | GPT-6 Astra | 0.7400 ±0.056 | 774 | 304.0M | 710k | $637.37 | 6.1h |
| 6 | Claude Sonnet 5.5 | 0.6852 ±0.223 | 536 | 232.1M | 953k | $58.80 | 11.9h |
| 7 | Gemini 4 Argon | 0.4827 ±0.477 | 128 | 29.8M | 291k | $13.52* | 1.9h |
| 8 | GLM-5.3 | 0.4371 ±0.154 | 483 | 217.2M | 576k | $69.06 | 16.6h |
| 9 | Kimi K3 | 0.4198 ±0.122 | 423 | 148.4M | 427k | $59.05 | 14.8h |
| 10 | Grok 4.6 | 0.2653 ±0.205 | 163 | 31.1M | 358k | $32.22 | 3.2h |
| 11 | Claude Haiku 5.5 | 0.2313 ±0.154 | 333 | 140.1M | 749k | $9.05 | 5.7h |
| 12 | Gemini 3.7 Flash | 0.2262 ±0.331 | 179 | 31.6M | 273k | $4.93 | 1.4h |
| 13 | Gemini 3.8 Flash | 0.2216 ±0.296 | 259 | 59.4M | 264k | $6.80 | 1.5h |
| 14 | Qwen3.8-Max-0902 | 0.1400 ±0.192 | 483 | 168.9M | 1.5M | $54.85 | 19.9h |
| 15 | GPT-5.6 Sol | 0.1334 ±0.212 | 242 | 45.3M | 182k | $36.56 | 2.5h |
| 16 | Grok 4.7 | 0.1258 ±0.163 | 233 | 60.5M | 275k | $61.46 | 1.7h |
| 17 | Muse Spark 1.3 | 0.0871 ±0.079 | 359 | 78.3M | 282k | $67.35 | 9.2h |
| 18 | GLM-5.3 Flash | 0.0828 ±0.130 | 451 | 168.9M | 452k | $5.93 | 9.8h |
| 19 | Muse Spark 1.2 | 0.0515 ±0.050 | 315 | 99.6M | 492k | $22.74 | 4.5h |
| 20 | Qwen3.8-Max | 0.0000 ±0.000 | 488 | 142.7M | 1.2M | $43.60 | 18.3h |
| 21 | DeepSeek V4 Flash Vision Exp | 0.0000 ±0.000 | 474 | 203.2M | 574k | $3.68 | 15.3h |
| 22 | Inkling | 0.0000 ±0.000 | 126 | 5.3M | 37k | $5.22 | 0.9h |
*Gemini 4 Argon: Cache hit rate is much lower due to a non-production setting.
Astrometry is the problem of figuring out exactly where on the sky a telescope image points. Blind plate solving, recovering a World Coordinate System (WCS) with no prior pointing hint, means extracting stars from noisy pixels, matching their geometric patterns against a full-sky reference catalog, and fitting a projection that maps pixels to celestial coordinates, all while handling rotation, unknown plate scale, vignetting, and survey-to-survey differences in depth and resolution.
Production solvers took years of engineering to make this robust. Here the agent must build one from scratch that generalizes across surveys: the development suite spans native and cropped SDSS frames, deliberately degraded observations, a coarse mixed optical/infrared campaign, and a synthetic field that can only be solved by genuinely blind search over the full-sky Gaia DR3 catalog.
Implement /app/astrometry/localize.py, invoked without network access as python /app/astrometry/localize.py --input-dir /path/to/campaign --output-dir /path/to/output. Each campaign supplies a campaign.json, FITS images, and a star catalog that may be a small field-local extract or the 1.35 GB full-sky Gaia catalog.
wcs/<image_id>.json for every image: a TAN celestial projection with ctype, crpix, crval, and a 2×2 cd matrix.registrations.jsonwith one 3×3 pixel-to-pixel transform per unordered overlapping image pair (no duplicate inverse entries).mosaic.fits (a finite two-dimensional image with a celestial WCS header) plus a run_summary.json.An example campaign at /app/example_campaign/ and five public development campaigns under /app/development_suite/campaigns/, each with public truth (truth/truth.json) containing reference WCS parameters and catalog samples with expected pixel coordinates: native SDSS frames, clean offset crops, degraded crops with noise and vignetting, a coarse mixed-survey campaign of rotated optical and infrared observations, and a synthetic star field wired to the full-sky catalog.
/data/astrometry/.python /app/astrometry/validate_outputs.py, that verifies artifact schemas without estimating scientific quality.A root-only verifier runs the submitted solver as the unprivileged agent user on sealed real campaigns covering sky fields never shown to the agent, plus a metamorphic exact-invariance case: a transformed copy of a sealed campaign that must produce equivalent results, catching solvers that key on incidental identifiers. Solver syscalls are audited with strace for network, reward, or hidden-truth access.
| Base image | python:3.13-slim-trixie |
| Tools available | Python 3 |
| Compute | 16 CPUs · 128 GB RAM |
| Time limit | 20h |