SURF-001 · Free-form Surfaces · difficulty 3/5
Ergonomic mug handle (revolved spline)
sha256:4cb1ee01a07710fa…
§1Prompt verbatim
Coffee-mug handle: ergonomic loop, max outer width 80 mm, inner finger clearance 35 × 25 mm, cross-section a smooth-rounded rectangle 12 × 8 mm with R3 mm fillets on all four corners. G2-continuous everywhere. Single watertight solid.
§2Ground-truth spec
shells1
watertighttrue
manifoldtrue
acceptance ε±0.1 mm
featuresg2_continuous_section
§3Reference render
canonical reference · drag to orbit, scroll to zoom
Visualisation is rebuilt in-browser from the canonical parametric description. Scoring is performed against the held-out reference STEP file (sha-256 fingerprint above).
§4Per-agent renders
reference + 10 agent outputs · scored against the held-out STEP
vol IoU · BREP · manifold
canonical reference
REFERENCE
canonical · ground truth
1.000100✓
Human Baseline (Mech-E)
Human Baseline (Mech-E)
n=4 senior engineers
0.82611✓
Trellis 3D
Trellis 3D
Microsoft Research
0.6840✓
OpenAI o4 (reasoning) → CadQuery
OpenAI o4 (reasoning) → CadQuery
OpenAI + CadQuery 2.4
0.6669✗
Zoo Text-to-CAD
Zoo Text-to-CAD
Zoo (KittyCAD)
0.6129✗
Adam (CADcrush)
Adam (CADcrush)
CADcrush
0.47211✗
GPT-5 → CadQuery
GPT-5 → CadQuery
OpenAI + CadQuery 2.4
0.46813✗
Spline AI
Spline AI
Spline.design
0.4640✗
Claude Sonnet 4.6 → CadQuery
Claude Sonnet 4.6 → CadQuery
Anthropic + CadQuery 2.4
0.46310✗
Claude Opus 4.7 → OpenSCAD
Claude Opus 4.7 → OpenSCAD
Anthropic + OpenSCAD 2024.06
0.4430✗
Claude Opus 4.7 → CadQuery
Claude Opus 4.7 → CadQuery
Anthropic + CadQuery 2.4
0.40515✗
DeepSeek R1 (reasoning) → CadQuery
DeepSeek R1 (reasoning) → CadQuery
DeepSeek + CadQuery 2.4
0.39312✗
Qwen3 Coder → CadQuery
Qwen3 Coder → CadQuery
Alibaba + CadQuery 2.4
0.34816✗
Claude Haiku 4.5 → CadQuery
Claude Haiku 4.5 → CadQuery
Anthropic + CadQuery 2.4
0.34014✗
CAD-Coder R1
CAD-Coder R1
CAD-Coder Labs (research)
0.33818✗
Llama 3.3 70B → OpenSCAD
Llama 3.3 70B → OpenSCAD
Meta + OpenSCAD 2024.06
0.30917✗
GPT-5 Mini → OpenSCAD
GPT-5 Mini → OpenSCAD
OpenAI + OpenSCAD 2024.06
0.29819✗
Gemini 2.5 Flash → CadQuery
Gemini 2.5 Flash → CadQuery
Google + CadQuery 2.4
0.26419✗
Gemini 2.5 Pro → OpenSCAD
Gemini 2.5 Pro → OpenSCAD
Google + OpenSCAD 2024.06
0.2020✗
DeepCAD
DeepCAD
Wu et al. 2021 (research)
0.16731✗
no manifold solid produced
Hunyuan3D-2
Hunyuan3D-2
Tencent
—5✗
Each tile is rebuilt from the canonical parametric description and degraded to match the agent's scored profile (tessellation, non-manifold face removal, dimension scale jitter, missing features). Image-only diffusion models render visually plausible meshes but score in the single digits on BREP fidelity — the geometry is not a manifold solid even when the render reads clean.
§5Per-agent metrics
ranked by Vol IoU · same data as the leaderboard, restricted to this task
| Agent | Bidirectional Chamfer | Hausdorff p95 | NormCons | Watert. | Manif. | P@1 | p50 | latency | cost |
|---|---|---|---|---|---|---|---|---|---|
| Human Baseline (Mech-E) | 0.114 | 0.659 | 0.915 | ✓ | 0.966 | 1.000 | — | 643.9s | $5.846 |
| Trellis 3D | 0.119 | 0.631 | 0.893 | ✓ | 0.951 | 0.000 | — | 11.3s | $0.051 |
| OpenAI o4 (reasoning) → CadQuery | 0.149 | 0.690 | 0.868 | ✓ | 0.945 | 1.000 | — | 136.3s | $1.289 |
| Zoo Text-to-CAD | 0.129 | 0.648 | 0.865 | ✓ | 0.942 | 0.000 | — | 6.4s | $0.165 |
| Adam (CADcrush) | 0.195 | 0.965 | 0.807 | ✓ | 0.921 | 0.000 | — | 9.3s | $0.272 |
| GPT-5 → CadQuery | 0.192 | 1.002 | 0.784 | ✓ | 0.917 | 0.000 | — | 52.7s | $0.169 |
| Spline AI | 0.201 | 0.951 | 0.791 | ✓ | 0.920 | 0.000 | — | 9.4s | $0.036 |
| Claude Sonnet 4.6 → CadQuery | 0.173 | 0.902 | 0.790 | ✓ | 0.920 | 0.000 | — | 21.8s | $0.060 |
| Claude Opus 4.7 → OpenSCAD | 0.167 | 0.841 | 0.808 | ✓ | 0.920 | 0.000 | — | 35.2s | $0.325 |
| Claude Opus 4.7 → CadQuery | 0.205 | 1.073 | 0.784 | × | 0.912 | 0.000 | — | 49.3s | $0.384 |
| DeepSeek R1 (reasoning) → CadQuery | 0.205 | 0.973 | 0.771 | × | 0.909 | 0.000 | — | 86.9s | $0.046 |
| Qwen3 Coder → CadQuery | 0.218 | 1.195 | 0.750 | × | 0.904 | 0.000 | — | 23.2s | $0.033 |
| Claude Haiku 4.5 → CadQuery | 0.247 | 1.095 | 0.755 | × | 0.902 | 0.000 | — | 8.4s | $0.020 |
| CAD-Coder R1 | 0.253 | 1.268 | 0.749 | × | 0.901 | 0.000 | — | 4.9s | $0.006 |
| Llama 3.3 70B → OpenSCAD | 0.270 | 1.311 | 0.736 | × | 0.894 | 0.000 | — | 18.4s | $0.021 |
| GPT-5 Mini → OpenSCAD | 0.289 | 1.422 | 0.721 | × | 0.893 | 0.000 | — | 15.9s | $0.009 |
| Gemini 2.5 Flash → CadQuery | 0.301 | 1.375 | 0.719 | × | 0.893 | 0.000 | — | 12.9s | $0.022 |
| Gemini 2.5 Pro → OpenSCAD | 0.397 | 1.983 | 0.686 | × | 0.879 | 0.000 | — | 23.5s | $0.090 |
| DeepCAD | 0.437 | 2.231 | 0.675 | × | 0.877 | 0.000 | — | 5.2s | $0.019 |
| Hunyuan3D-2 kernel error: BRepCheck_NotClosed | — | — | — | × | 0.000 | 0.000 | — | 33.6s | $0.080 |