← mecheval / run / a2-bolt-circle-block-01 / claude-direct-claude-opus-4-7 / 20260428T211859Z-1964

run 20260428T211859Z-1964

a2-bolt-circle-block-01 · claude-direct-claude-opus-4-7

Summary

statusPASS
score1.00 (6/6)
submissionself-run
modelclaude-direct-claude-opus-4-7 (anthropic)
started2026-04-28T21:18:59.934Z
ended2026-04-28T21:19:10.358Z
tokens895 in · 1,216 out · 2,111 total
wallclock9.9s
tool calls1
task hash5478fe0e89d6ecbb…
vcad hashe5b00809a839f121…

Prompt

Make a square block 60mm × 60mm × 10mm. Center it in X and Y, with the bottom face on the XY plane (z = 0 to z = 10). Drill eight through-holes of diameter 5mm, axes parallel to Z, on a bolt circle of radius 20mm centered on the Z axis. Holes are evenly spaced every 45 degrees, with the first hole on the +X axis. Output a single solid.

Checks

0
valid_solid
pass
params + details
params: {
  "type": "valid_solid"
}

details: {
  "root_count": 1,
  "solids_produced": 1
}
1
bbox
pass
params + details
params: {
  "type": "bbox",
  "min": [
    -30,
    -30,
    0
  ],
  "max": [
    30,
    30,
    10
  ],
  "tolerance_mm": 0.1
}

details: {
  "actual_max": [
    30,
    30,
    10
  ],
  "actual_min": [
    -30,
    -30,
    0
  ],
  "deviation_max": [
    0,
    0,
    0
  ],
  "deviation_min": [
    0,
    0,
    0
  ],
  "max_abs_deviation_mm": 0,
  "tolerance_mm": 0.1
}
2
mass_props
pass
params + details
params: {
  "type": "mass_props",
  "volume_mm3": 34429.2,
  "tolerance_pct": 0.5
}

details: {
  "volume": {
    "actual_mm3": 34439.277360888394,
    "deviation_pct": 0.029269808442825798,
    "pass": true,
    "spec_mm3": 34429.2,
    "tolerance_pct": 0.5
  }
}
3
hole_count
pass
params + details
params: {
  "type": "hole_count",
  "diameter_mm": 5,
  "expected": 8,
  "diameter_tolerance_mm": 0.05
}

details: {
  "actual": 8,
  "diameter_mm": 5,
  "diameter_tolerance_mm": 0.05,
  "expected": 8,
  "found": [
    [
      20,
      0,
      5
    ],
    [
      14.142135623730953,
      14.142135623730953,
      5
    ],
    [
      0,
      20,
      5
    ],
    [
      -14.142135623730953,
      14.142135623730953,
      5
    ],
    [
      -20,
      0,
      5
    ],
    [
      -14.142135623730953,
      -14.142135623730953,
      5
    ],
    [
      0,
      -20,
      5
    ],
    [
      14.142135623730953,
      -14.142135623730953,
      5
    ]
  ]
}
4
hole_positions
pass
params + details
params: {
  "type": "hole_positions",
  "diameter_mm": 5,
  "positions": [
    [
      20,
      0,
      0
    ],
    [
      14.14,
      14.14,
      0
    ],
    [
      0,
      20,
      0
    ],
    [
      -14.14,
      14.14,
      0
    ],
    [
      -20,
      0,
      0
    ],
    [
      -14.14,
      -14.14,
      0
    ],
    [
      0,
      -20,
      0
    ],
    [
      14.14,
      -14.14,
      0
    ]
  ],
  "tolerance_mm": 0.2
}

details: {
  "diameter_mm": 5,
  "per_expected": [
    {
      "distance_mm": 0,
      "matched_hole": [
        20,
        0
      ],
      "pass": true,
      "spec_xy": [
        20,
        0
      ]
    },
    {
      "distance_mm": 0.0030202280444384575,
      "matched_hole": [
        14.142135623730953,
        14.142135623730953
      ],
      "pass": true,
      "spec_xy": [
        14.14,
        14.14
      ]
    },
    {
      "distance_mm": 0,
      "matched_hole": [
        0,
        20
      ],
      "pass": true,
      "spec_xy": [
        0,
        20
      ]
    },
    {
      "distance_mm": 0.0030202280444384575,
      "matched_hole": [
        -14.142135623730953,
        14.142135623730953
      ],
      "pass": true,
      "spec_xy": [
        -14.14,
        14.14
      ]
    },
    {
      "distance_mm": 0,
      "matched_hole": [
        -20,
        0
      ],
      "pass": true,
      "spec_xy": [
        -20,
        0
      ]
    },
    {
      "distance_mm": 0.0030202280444384575,
      "matched_hole": [
        -14.142135623730953,
        -14.142135623730953
      ],
      "pass": true,
      "spec_xy": [
        -14.14,
        -14.14
      ]
    },
    {
      "distance_mm": 0,
      "matched_hole": [
        0,
        -20
      ],
      "pass": true,
      "spec_xy": [
        0,
        -20
      ]
    },
    {
      "distance_mm": 0.0030202280444384575,
      "matched_hole": [
        14.142135623730953,
        -14.142135623730953
      ],
      "pass": true,
      "spec_xy": [
        14.14,
        -14.14
      ]
    }
  ],
  "tolerance_mm": 0.2,
  "unmatched_extras": []
}
5
step_roundtrip
pass
params + details
params: {
  "type": "step_roundtrip",
  "tolerance_pct": 1
}

details: {
  "per_solid": [
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          30,
          30,
          10
        ],
        "original_min": [
          -30,
          -30,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          30,
          30,
          10
        ],
        "roundtripped_min": [
          -30,
          -30,
          0
        ],
        "tolerance_mm": 0.8544003745317531
      },
      "index": 0,
      "pass": true,
      "volume": {
        "deviation_pct": 0,
        "original_mm3": 34439.277360888394,
        "pass": true,
        "roundtripped_mm3": 34439.277360888394
      }
    }
  ],
  "tolerance_pct": 1
}

Tool calls

0
anthropic.messages.create
ok
9940ms
args
{
  "model": "claude-opus-4-7",
  "max_tokens": 8000,
  "system_chars": 1632,
  "user_chars": 403
}

What the model built

isometric render via vcad-render · the model's actual .vcad output, faceted at 28 segments per cylinder · download 20260428T211859Z-1964.vcad

.vcad source

{
  "version": "0.1",
  "nodes": {
    "1": {"id": 1, "name": "cube", "op": {"type": "Cube", "size": {"x": 60, "y": 60, "z": 10}}},
    "2": {"id": 2, "name": "block", "op": {"type": "Translate", "child": 1, "offset": {"x": -30, "y": -30, "z": 0}}},
    "10": {"id": 10, "name": "hole", "op": {"type": "Cylinder", "radius": 2.5, "height": 12, "segments": 32}},
    "11": {"id": 11, "name": "hole_z", "op": {"type": "Translate", "child": 10, "offset": {"x": 0, "y": 0, "z": -1}}},
    "20": {"id": 20, "name": "h0", "op": {"type": "Translate", "child": 11, "offset": {"x": 20.0, "y": 0.0, "z": 0}}},
    "21": {"id": 21, "name": "h1", "op": {"type": "Translate", "child": 11, "offset": {"x": 14.142135623730951, "y": 14.142135623730951, "z": 0}}},
    "22": {"id": 22, "name": "h2", "op": {"type": "Translate", "child": 11, "offset": {"x": 0.0, "y": 20.0, "z": 0}}},
    "23": {"id": 23, "name": "h3", "op": {"type": "Translate", "child": 11, "offset": {"x": -14.142135623730951, "y": 14.142135623730951, "z": 0}}},
    "24": {"id": 24, "name": "h4", "op": {"type": "Translate", "child": 11, "offset": {"x": -20.0, "y": 0.0, "z": 0}}},
    "25": {"id": 25, "name": "h5", "op": {"type": "Translate", "child": 11, "offset": {"x": -14.142135623730951, "y": -14.142135623730951, "z": 0}}},
    "26": {"id": 26, "name": "h6", "op": {"type": "Translate", "child": 11, "offset": {"x": 0.0, "y": -20.0, "z": 0}}},
    "27": {"id": 27, "name": "h7", "op": {"type": "Translate", "child": 11, "offset": {"x": 14.142135623730951, "y": -14.142135623730951, "z": 0}}},
    "30": {"id": 30, "name": "u01", "op": {"type": "Union", "left": 20, "right": 21}},
    "31": {"id": 31, "name": "u02", "op": {"type": "Union", "left": 30, "right": 22}},
    "32": {"id": 32, "name": "u03", "op": {"type": "Union", "left": 31, "right": 23}},
    "33": {"id": 33, "name": "u04", "op": {"type": "Union", "left": 32, "right": 24}},
    "34": {"id": 34, "name": "u05", "op": {"type": "Union", "left": 33, "right": 25}},
    "35": {"id": 35, "name": "u06", "op": {"type": "Union", "left": 34, "right": 26}},
    "36": {"id": 36, "name": "all_holes", "op": {"type": "Union", "left": 35, "right": 27}},
    "40": {"id": 40, "name": "result", "op": {"type": "Difference", "left": 2, "right": 36}}
  },
  "materials": {},
  "part_materials": {},
  "roots": [{"root": 40, "material": "default"}]
}

generated 2026-06-19T01:47:55.423Z · static site, regenerate with npm run build -w @mecheval/leaderboard