← mecheval / run / a4-flanged-shaft-01 / claude-mcp-claude-opus-4-7 / 20260611T221643Z-af72

run 20260611T221643Z-af72

a4-flanged-shaft-01 · claude-mcp-claude-opus-4-7

Summary

statusfail
score0.88 (7/8)
submissionself-run
modelclaude-mcp-claude-opus-4-7 (anthropic)
started2026-06-11T22:16:43.321Z
ended2026-06-11T22:20:07.398Z
tokens651,526 in · 8,093 out · 659,619 total
wallclock203.9s
tool calls46
task hash70d8d5eb7fc1d941…
vcad hash5eb05c8551316248…

Prompt

Make a flanged hollow shaft as a single solid. The base is a circular flange of outer diameter 80mm and thickness 10mm, with its bottom face on the XY plane (z = 0 to z = 10). Above the flange and concentric with it sits a cylindrical shaft of outer diameter 30mm extending 50mm upward (z = 10 to z = 60). A central through-bore of diameter 15mm runs along the Z axis through both the flange and the shaft (z = 0 to z = 60). The flange has four bolt holes of diameter 6mm, axes parallel to Z, on a bolt circle of diameter 60mm (radius 30mm) centered on the Z axis. The first bolt hole is on the +X axis; the others are spaced every 90 degrees. The bolt holes pass through the full flange thickness. Output a single solid.

Checks

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

details: {
  "root_count": 7,
  "solids_produced": 7
}
1
bbox
pass
params + details
params: {
  "type": "bbox",
  "min": [
    -40,
    -40,
    0
  ],
  "max": [
    40,
    40,
    60
  ],
  "tolerance_mm": 0.2
}

details: {
  "actual_max": [
    40,
    40,
    60
  ],
  "actual_min": [
    -40,
    -40,
    0
  ],
  "deviation_max": [
    0,
    0,
    0
  ],
  "deviation_min": [
    0,
    0,
    0
  ],
  "max_abs_deviation_mm": 0,
  "tolerance_mm": 0.2
}
2
mass_props
fail
volume off by 148.0%
params + details
params: {
  "type": "mass_props",
  "volume_mm3": 73874.55,
  "tolerance_pct": 1.5
}

details: {
  "volume": {
    "actual_mm3": 183213.32477113523,
    "deviation_pct": 148.00601123273879,
    "pass": false,
    "spec_mm3": 73874.55,
    "tolerance_pct": 1.5
  }
}
3
hole_count
pass
params + details
params: {
  "type": "hole_count",
  "diameter_mm": 15,
  "expected": 1,
  "diameter_tolerance_mm": 0.1
}

details: {
  "actual": 1,
  "diameter_mm": 15,
  "diameter_tolerance_mm": 0.1,
  "expected": 1,
  "found": [
    [
      0,
      0,
      15
    ]
  ]
}
4
hole_positions
pass
params + details
params: {
  "type": "hole_positions",
  "diameter_mm": 15,
  "positions": [
    [
      0,
      0,
      0
    ]
  ],
  "tolerance_mm": 0.2
}

details: {
  "diameter_mm": 15,
  "per_expected": [
    {
      "distance_mm": 0,
      "matched_hole": [
        0,
        0
      ],
      "pass": true,
      "spec_xy": [
        0,
        0
      ]
    }
  ],
  "tolerance_mm": 0.2,
  "unmatched_extras": []
}
5
hole_count
pass
params + details
params: {
  "type": "hole_count",
  "diameter_mm": 6,
  "expected": 4,
  "diameter_tolerance_mm": 0.05
}

details: {
  "actual": 4,
  "diameter_mm": 6,
  "diameter_tolerance_mm": 0.05,
  "expected": 4,
  "found": [
    [
      30,
      0,
      6
    ],
    [
      1.83697019872103e-15,
      30,
      6
    ],
    [
      -30,
      3.67394039744206e-15,
      6
    ],
    [
      -5.510910596163089e-15,
      -30,
      6
    ]
  ]
}
6
hole_positions
pass
params + details
params: {
  "type": "hole_positions",
  "diameter_mm": 6,
  "positions": [
    [
      30,
      0,
      0
    ],
    [
      0,
      30,
      0
    ],
    [
      -30,
      0,
      0
    ],
    [
      0,
      -30,
      0
    ]
  ],
  "tolerance_mm": 0.2
}

details: {
  "diameter_mm": 6,
  "per_expected": [
    {
      "distance_mm": 0,
      "matched_hole": [
        30,
        0
      ],
      "pass": true,
      "spec_xy": [
        30,
        0
      ]
    },
    {
      "distance_mm": 1.83697019872103e-15,
      "matched_hole": [
        1.83697019872103e-15,
        30
      ],
      "pass": true,
      "spec_xy": [
        0,
        30
      ]
    },
    {
      "distance_mm": 3.67394039744206e-15,
      "matched_hole": [
        -30,
        3.67394039744206e-15
      ],
      "pass": true,
      "spec_xy": [
        -30,
        0
      ]
    },
    {
      "distance_mm": 5.510910596163089e-15,
      "matched_hole": [
        -5.510910596163089e-15,
        -30
      ],
      "pass": true,
      "spec_xy": [
        0,
        -30
      ]
    }
  ],
  "tolerance_mm": 0.2,
  "unmatched_extras": []
}
7
step_roundtrip
pass
params + details
params: {
  "type": "step_roundtrip",
  "tolerance_pct": 1.5
}

details: {
  "per_solid": [
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          40,
          40,
          60
        ],
        "original_min": [
          -40,
          -40,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          40,
          40,
          60
        ],
        "roundtripped_min": [
          -40,
          -40,
          0
        ],
        "tolerance_mm": 1.9209372712298545
      },
      "index": 0,
      "pass": true,
      "volume": {
        "deviation_pct": 0.4947798914784181,
        "original_mm3": 85470.94666820041,
        "pass": true,
        "roundtripped_mm3": 85048.05361102991
      }
    },
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          7.5,
          7.5,
          60
        ],
        "original_min": [
          -7.5,
          -7.5,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          7.5,
          7.5,
          60
        ],
        "roundtripped_min": [
          -7.5,
          -7.5,
          0
        ],
        "tolerance_mm": 0.9545941546018392
      },
      "index": 1,
      "pass": true,
      "volume": {
        "deviation_pct": 0.48152593655421533,
        "original_mm3": 10585.851193456168,
        "pass": true,
        "roundtripped_mm3": 10534.877574354643
      }
    },
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          3,
          3,
          10
        ],
        "original_min": [
          -3,
          -3,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          3,
          3,
          10
        ],
        "roundtripped_min": [
          -3,
          -3,
          0
        ],
        "tolerance_mm": 0.19672315572906
      },
      "index": 2,
      "pass": true,
      "volume": {
        "deviation_pct": 0,
        "original_mm3": 280.9300646298918,
        "pass": true,
        "roundtripped_mm3": 280.9300646298918
      }
    },
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          33,
          3,
          10
        ],
        "original_min": [
          27,
          -3,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          33,
          3,
          10
        ],
        "roundtripped_min": [
          27,
          -3,
          0
        ],
        "tolerance_mm": 0.19672315572906
      },
      "index": 3,
      "pass": true,
      "volume": {
        "deviation_pct": 0,
        "original_mm3": 280.93003532970556,
        "pass": true,
        "roundtripped_mm3": 280.93003532970556
      }
    },
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          33,
          33,
          10
        ],
        "original_min": [
          -33,
          -33,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          33,
          33,
          10
        ],
        "roundtripped_min": [
          -33,
          -33,
          0
        ],
        "tolerance_mm": 1.4080838043241601
      },
      "index": 4,
      "pass": true,
      "volume": {
        "deviation_pct": 0,
        "original_mm3": 1123.7201413188238,
        "pass": true,
        "roundtripped_mm3": 1123.7201413188238
      }
    },
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          33,
          33,
          60
        ],
        "original_min": [
          -33,
          -33,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          33,
          33,
          60
        ],
        "roundtripped_min": [
          -33,
          -33,
          0
        ],
        "tolerance_mm": 1.6643917808016238
      },
      "index": 5,
      "pass": true,
      "volume": {
        "deviation_pct": 0.48152629338204106,
        "original_mm3": 11715.00856217223,
        "pass": true,
        "roundtripped_mm3": 11658.597715673413
      }
    },
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          40,
          40,
          60
        ],
        "original_min": [
          -40,
          -40,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          40,
          40,
          60
        ],
        "roundtripped_min": [
          -40,
          -40,
          0
        ],
        "tolerance_mm": 1.9209372712298545
      },
      "index": 6,
      "pass": true,
      "volume": {
        "deviation_pct": 0.5223793989542541,
        "original_mm3": 73755.93810602803,
        "pass": true,
        "roundtripped_mm3": 73370.65227985669
      }
    }
  ],
  "tolerance_pct": 1.5
}

Tool calls

0
open_document
ok
2ms
args
{}
1
create
err
6ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "difference",
  "name": "Flanged Hollow Shaft",
  "params": {
    "tool": {
      "type": "union",
      "children": [
        {
          "type": "translate",
          "offset": {
            "x": 0,
            "y": 0,
            "z": 0
          },
          "child": {
            "type": "cylinder",
            "radius": 7.5,
            "height": 60
          }
        },
        {
          "type": "circular_pattern",
          "axis": {
            "x": 0,
            "y": 0,
            "z": 1
          },
          "center": {
            "x": 0,
            "y": 0,
            "z": 0
          },
          "count": 4,
          "angle_deg": 360,
          "child": {
            "type": "translate",
            "offset": {
              "x": 30,
              "y": 0,
              "z": 0
            },
            "child": {
              "type": "cylinder",
              "radius": 3,
              "height": 10
            }
          }
        }
      ]
    },
    "subject": {
      "type": "union",
      "children": [
        {
          "type": "cylinder",
          "radius": 40,
          "height": 10
        },
        {
          "type": "translate",
          "offset": {
            "x": 0,
            "y": 0,
            "z": 10
          },
          "child": {
            "type": "cylinder",
            "radius": 15,
            "height": 50
          }
        }
      ]
    }
  }
}
2
create_cad_loon
ok
13ms
args
{
  "source": "[let\n  body [union\n    [cylinder 40 10]\n    [translate 0 0 10 [cylinder 15 50]]]\n  bore [cylinder 7.5 60]\n  bolt [translate 30 0 0 [cylinder 3 10]]\n  bolts [circular-pattern 0 0 0 0 0 1 4 360 bolt]\n  [root [difference bolts [difference bore body]] \"steel\"]]",
  "format": "json"
}
3
create
err
4ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "cylinder",
  "name": "flange",
  "params": {
    "radius": 40,
    "height": 10
  }
}
4
create
err
1ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "cylinder",
  "name": "shaft_raw",
  "params": {
    "radius": 15,
    "height": 50
  }
}
5
create
ok
6ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "cylinder",
  "name": "flange",
  "params": {
    "radius": 40,
    "height": 10,
    "segments": 64
  }
}
6
create
ok
3ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "cylinder",
  "name": "shaft_raw",
  "params": {
    "radius": 15,
    "height": 50,
    "segments": 64
  }
}
7
create
ok
1ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "cylinder",
  "name": "bore",
  "params": {
    "radius": 7.5,
    "height": 60,
    "segments": 64
  }
}
8
create
ok
1ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "cylinder",
  "name": "bolt_hole",
  "params": {
    "radius": 3,
    "height": 10,
    "segments": 32
  }
}
9
delete
ok
4ms
args
{
  "document_id": "doc_1781216203497_1",
  "part_id": "1"
}
10
delete
ok
2ms
args
{
  "document_id": "doc_1781216203497_1",
  "part_id": "2"
}
11
delete
ok
1ms
args
{
  "document_id": "doc_1781216203497_1",
  "part_id": "3"
}
12
delete
ok
1ms
args
{
  "document_id": "doc_1781216203497_1",
  "part_id": "4"
}
13
create
err
6ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "difference",
  "name": "FlangedHollowShaft",
  "params": {
    "left": {
      "type": "union",
      "left": {
        "type": "cylinder",
        "radius": 40,
        "height": 10,
        "segments": 64
      },
      "right": {
        "type": "translate",
        "offset": {
          "x": 0,
          "y": 0,
          "z": 10
        },
        "child": {
          "type": "cylinder",
          "radius": 15,
          "height": 50,
          "segments": 64
        }
      }
    },
    "right": {
      "type": "union",
      "left": {
        "type": "cylinder",
        "radius": 7.5,
        "height": 60,
        "segments": 64
      },
      "right": {
        "type": "circular_pattern",
        "center": {
          "x": 0,
          "y": 0,
          "z": 0
        },
        "axis": {
          "x": 0,
          "y": 0,
          "z": 1
        },
        "count": 4,
        "angle_deg": 360,
        "child": {
          "type": "translate",
          "offset": {
            "x": 30,
            "y": 0,
            "z": 0
          },
          "child": {
            "type": "cylinder",
            "radius": 3,
            "height": 10,
            "segments": 32
          }
        }
      }
    }
  }
}
14
create
ok
3ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "cylinder",
  "name": "flange_disk",
  "params": {
    "radius": 40,
    "height": 10,
    "segments": 64
  }
}
15
create
ok
2ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "cylinder",
  "name": "shaft_raw",
  "params": {
    "radius": 15,
    "height": 50,
    "segments": 64
  }
}
16
create
ok
1ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "cylinder",
  "name": "bore",
  "params": {
    "radius": 7.5,
    "height": 60,
    "segments": 64
  }
}
17
create
ok
1ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "cylinder",
  "name": "bolt_hole",
  "params": {
    "radius": 3,
    "height": 10,
    "segments": 32
  }
}
18
read
ok
3ms
args
{
  "document_id": "doc_1781216203497_1"
}
19
delete
ok
2ms
args
{
  "document_id": "doc_1781216203497_1",
  "part_id": "2"
}
20
delete
ok
1ms
args
{
  "document_id": "doc_1781216203497_1",
  "part_id": "3"
}
21
delete
ok
1ms
args
{
  "document_id": "doc_1781216203497_1",
  "part_id": "4"
}
22
create
err
4ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "union",
  "name": "add_shaft",
  "parent_part_id": "1",
  "params": {
    "child": {
      "type": "translate",
      "offset": {
        "x": 0,
        "y": 0,
        "z": 10
      },
      "child": {
        "type": "cylinder",
        "radius": 15,
        "height": 50,
        "segments": 64
      }
    }
  }
}
23
create
err
3ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "union",
  "name": "add_shaft",
  "parent_part_id": "1",
  "params": {
    "left": {
      "type": "translate",
      "offset": {
        "x": 0,
        "y": 0,
        "z": 10
      },
      "child": {
        "type": "cylinder",
        "radius": 15,
        "height": 50,
        "segments": 64
      }
    }
  }
}
24
read
ok
2ms
args
{
  "document_id": "doc_1781216203497_1",
  "part_id": "1"
}
25
create
ok
3ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "cylinder",
  "name": "shaft_cyl",
  "params": {
    "radius": 15,
    "height": 50,
    "segments": 64
  }
}
26
create
err
3ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "translate",
  "name": "shaft_translated",
  "parent_part_id": "2",
  "params": {
    "offset": {
      "x": 0,
      "y": 0,
      "z": 10
    }
  }
}
27
create
ok
3ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "translate",
  "name": "shaft_translated",
  "parent_part_id": "2",
  "params": {
    "offset": {
      "x": 0,
      "y": 0,
      "z": 10
    },
    "child": 2
  }
}
28
create
err
4ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "union",
  "name": "flange_plus_shaft",
  "parent_part_id": "1",
  "params": {
    "right": 3
  }
}
29
create
ok
5ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "union",
  "name": "flange_plus_shaft",
  "parent_part_id": "1",
  "params": {
    "left": 1,
    "right": 3
  }
}
30
read
ok
2ms
args
{
  "document_id": "doc_1781216203497_1"
}
31
get_document
ok
2ms
args
{
  "document_id": "doc_1781216203497_1"
}
32
delete
ok
2ms
args
{
  "document_id": "doc_1781216203497_1",
  "part_id": "1"
}
33
get_document
ok
1ms
args
{
  "document_id": "doc_1781216203497_1"
}
34
delete
ok
3ms
args
{
  "document_id": "doc_1781216203497_1",
  "part_id": "2"
}
35
delete
ok
1ms
args
{
  "document_id": "doc_1781216203497_1",
  "part_id": "3"
}
36
create
ok
3ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "cylinder",
  "name": "bore_cyl",
  "params": {
    "radius": 7.5,
    "height": 60,
    "segments": 64
  }
}
37
create
ok
1ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "cylinder",
  "name": "bolt_hole_cyl",
  "params": {
    "radius": 3,
    "height": 10,
    "segments": 32
  }
}
38
create
ok
3ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "translate",
  "name": "bolt_hole_at_x30",
  "parent_part_id": "6",
  "params": {
    "offset": {
      "x": 30,
      "y": 0,
      "z": 0
    },
    "child": 6
  }
}
39
create
err
4ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "circular_pattern",
  "name": "bolt_holes",
  "parent_part_id": "7",
  "params": {
    "center": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "axis": {
      "x": 0,
      "y": 0,
      "z": 1
    },
    "count": 4,
    "angle_deg": 360,
    "child": 7
  }
}
40
create
err
3ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "circular_pattern",
  "name": "bolt_holes",
  "parent_part_id": "7",
  "params": {
    "axis_origin": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "axis_direction": {
      "x": 0,
      "y": 0,
      "z": 1
    },
    "count": 4,
    "angle_deg": 360,
    "child": 7
  }
}
41
create
ok
3ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "circular_pattern",
  "name": "bolt_holes",
  "parent_part_id": "7",
  "params": {
    "axis_origin": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "axis_dir": {
      "x": 0,
      "y": 0,
      "z": 1
    },
    "count": 4,
    "angle_deg": 360,
    "child": 7
  }
}
42
create
ok
4ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "union",
  "name": "all_holes",
  "parent_part_id": "5",
  "params": {
    "left": 5,
    "right": 8
  }
}
43
create
ok
3ms
args
{
  "document_id": "doc_1781216203497_1",
  "type": "difference",
  "name": "FlangedHollowShaft",
  "parent_part_id": "4",
  "params": {
    "left": 4,
    "right": 9
  }
}
44
get_document
ok
2ms
args
{
  "document_id": "doc_1781216203497_1"
}
45
get_document
ok
1ms
args
{
  "document_id": "doc_1781216203497_1"
}

What the model built

isometric render via vcad-render · the model's actual .vcad output, faceted at 28 segments per cylinder · download 20260611T221643Z-af72.vcad

.vcad source

{
  "version": "0.1",
  "nodes": {
    "1": {
      "id": 1,
      "name": "flange_disk",
      "op": {
        "type": "Cylinder",
        "radius": 40,
        "height": 10,
        "segments": 64
      }
    },
    "2": {
      "id": 2,
      "name": "shaft_cyl",
      "op": {
        "type": "Cylinder",
        "radius": 15,
        "height": 50,
        "segments": 64
      }
    },
    "3": {
      "id": 3,
      "name": "shaft_translated",
      "op": {
        "type": "Translate",
        "child": 2,
        "offset": {
          "x": 0,
          "y": 0,
          "z": 10
        }
      }
    },
    "4": {
      "id": 4,
      "name": "flange_plus_shaft",
      "op": {
        "type": "Union",
        "left": 1,
        "right": 3
      }
    },
    "5": {
      "id": 5,
      "name": "bore_cyl",
      "op": {
        "type": "Cylinder",
        "radius": 7.5,
        "height": 60,
        "segments": 64
      }
    },
    "6": {
      "id": 6,
      "name": "bolt_hole_cyl",
      "op": {
        "type": "Cylinder",
        "radius": 3,
        "height": 10,
        "segments": 32
      }
    },
    "7": {
      "id": 7,
      "name": "bolt_hole_at_x30",
      "op": {
        "type": "Translate",
        "child": 6,
        "offset": {
          "x": 30,
          "y": 0,
          "z": 0
        }
      }
    },
    "8": {
      "id": 8,
      "name": "bolt_holes",
      "op": {
        "type": "CircularPattern",
        "child": 7,
        "axis_origin": {
          "x": 0,
          "y": 0,
          "z": 0
        },
        "axis_dir": {
          "x": 0,
          "y": 0,
          "z": 1
        },
        "count": 4,
        "angle_deg": 360
      }
    },
    "9": {
      "id": 9,
      "name": "all_holes",
      "op": {
        "type": "Union",
        "left": 5,
        "right": 8
      }
    },
    "10": {
      "id": 10,
      "name": "FlangedHollowShaft",
      "op": {
        "type": "Difference",
        "left": 4,
        "right": 9
      }
    }
  },
  "materials": {},
  "part_materials": {},
  "roots": [
    {
      "root": 4,
      "material": "default"
    },
    {
      "root": 5,
      "material": "default"
    },
    {
      "root": 6,
      "material": "default"
    },
    {
      "root": 7,
      "material": "default"
    },
    {
      "root": 8,
      "material": "default"
    },
    {
      "root": 9,
      "material": "default"
    },
    {
      "root": 10,
      "material": "default"
    }
  ]
}

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