← mecheval / run / a3-octagonal-flange-01 / claude-mcp-claude-opus-4-7 / 20260611T181601Z-5692

run 20260611T181601Z-5692

a3-octagonal-flange-01 · claude-mcp-claude-opus-4-7

Summary

statusfail
score0.33 (2/6)
submissionself-run
modelclaude-mcp-claude-opus-4-7 (anthropic)
started2026-06-11T18:16:01.638Z
ended2026-06-11T18:18:20.694Z
tokens653,686 in · 7,849 out · 661,535 total
wallclock139.0s
tool calls34
task hash91605c57469285ce…
vcad hasha105fd4e8853a5e3…

Prompt

Make an octagonal prism flange. The outer cross-section is a regular octagon with flat-to-flat distance 40mm (apothem 20mm), oriented so two flats are parallel to the X axis (the top and bottom of the octagon). Height 8mm along Z, base on the XY plane (z = 0 to z = 8). Drill eight through-holes of diameter 5mm, axes parallel to Z, on a bolt circle of radius 15mm centered on the Z axis. The first bolt hole is on the +X axis, and the rest are evenly spaced every 45 degrees. Output a single solid.

Checks

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

details: {
  "root_count": 2,
  "solids_produced": 2
}
1
bbox
fail
X off by -1.65mm
params + details
params: {
  "type": "bbox",
  "min": [
    -21.65,
    -20,
    0
  ],
  "max": [
    21.65,
    20,
    8
  ],
  "tolerance_mm": 0.3
}

details: {
  "actual_max": [
    20,
    20,
    8
  ],
  "actual_min": [
    -20,
    -20,
    0
  ],
  "deviation_max": [
    -1.6499999999999986,
    0,
    0
  ],
  "deviation_min": [
    1.6499999999999986,
    0,
    0
  ],
  "max_abs_deviation_mm": 1.6499999999999986,
  "tolerance_mm": 0.3
}
2
mass_props
fail
volume off by 26.8%
params + details
params: {
  "type": "mass_props",
  "volume_mm3": 9347.81,
  "tolerance_pct": 1.5
}

details: {
  "volume": {
    "actual_mm3": 11852.456113895225,
    "deviation_pct": 26.793934770766903,
    "pass": false,
    "spec_mm3": 9347.81,
    "tolerance_pct": 1.5
  }
}
3
hole_count
fail
found 0/8 holes of ⌀5mm
params + details
params: {
  "type": "hole_count",
  "diameter_mm": 5,
  "expected": 8,
  "diameter_tolerance_mm": 0.05
}

details: {
  "actual": 0,
  "diameter_mm": 5,
  "diameter_tolerance_mm": 0.05,
  "expected": 8,
  "found": []
}
4
hole_positions
fail
8/8 mispositioned
params + details
params: {
  "type": "hole_positions",
  "diameter_mm": 5,
  "positions": [
    [
      15,
      0,
      0
    ],
    [
      10.61,
      10.61,
      0
    ],
    [
      0,
      15,
      0
    ],
    [
      -10.61,
      10.61,
      0
    ],
    [
      -15,
      0,
      0
    ],
    [
      -10.61,
      -10.61,
      0
    ],
    [
      0,
      -15,
      0
    ],
    [
      10.61,
      -10.61,
      0
    ]
  ],
  "tolerance_mm": 0.2
}

details: {
  "diameter_mm": 5,
  "per_expected": [
    {
      "pass": false,
      "reason": "no candidate cylindrical feature of this diameter remained unmatched",
      "spec_xy": [
        15,
        0
      ]
    },
    {
      "pass": false,
      "reason": "no candidate cylindrical feature of this diameter remained unmatched",
      "spec_xy": [
        10.61,
        10.61
      ]
    },
    {
      "pass": false,
      "reason": "no candidate cylindrical feature of this diameter remained unmatched",
      "spec_xy": [
        0,
        15
      ]
    },
    {
      "pass": false,
      "reason": "no candidate cylindrical feature of this diameter remained unmatched",
      "spec_xy": [
        -10.61,
        10.61
      ]
    },
    {
      "pass": false,
      "reason": "no candidate cylindrical feature of this diameter remained unmatched",
      "spec_xy": [
        -15,
        0
      ]
    },
    {
      "pass": false,
      "reason": "no candidate cylindrical feature of this diameter remained unmatched",
      "spec_xy": [
        -10.61,
        -10.61
      ]
    },
    {
      "pass": false,
      "reason": "no candidate cylindrical feature of this diameter remained unmatched",
      "spec_xy": [
        0,
        -15
      ]
    },
    {
      "pass": false,
      "reason": "no candidate cylindrical feature of this diameter remained unmatched",
      "spec_xy": [
        10.61,
        -10.61
      ]
    }
  ],
  "tolerance_mm": 0.2,
  "unmatched_extras": []
}
5
step_roundtrip
pass
params + details
params: {
  "type": "step_roundtrip",
  "tolerance_pct": 1.5
}

details: {
  "per_solid": [
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          20,
          20,
          8
        ],
        "original_min": [
          -20,
          -20,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          20,
          20,
          8
        ],
        "roundtripped_min": [
          -20,
          -20,
          0
        ],
        "tolerance_mm": 0.856971411425142
      },
      "index": 0,
      "pass": true,
      "volume": {
        "deviation_pct": 0,
        "original_mm3": 10603.877920098545,
        "pass": true,
        "roundtripped_mm3": 10603.877920098545
      }
    },
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          17.5,
          17.5,
          8
        ],
        "original_min": [
          -17.5,
          -17.5,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          17.5,
          17.5,
          8
        ],
        "roundtripped_min": [
          -17.5,
          -17.5,
          0
        ],
        "tolerance_mm": 0.7520970682033005
      },
      "index": 1,
      "pass": true,
      "volume": {
        "deviation_pct": 0,
        "original_mm3": 1248.578193796681,
        "pass": true,
        "roundtripped_mm3": 1248.578193796681
      }
    }
  ],
  "tolerance_pct": 1.5
}

Tool calls

0
open_document
ok
2ms
args
{}
1
create_cad_loon
err
8ms
args
{
  "source": "[let\n  [octagon [sketch 0 0 0  1 0 0  0 1 0\n    #[\n      [line 20.0000 8.2843  20.0000 -8.2843]\n      [line 20.0000 -8.2843  8.2843 -20.0000]\n      [line 8.2843 -20.0000  -8.2843 -20.0000]\n      [line -8.2843 -20.0000  -20.0000 -8.2843]\n      [line -20.0000 -8.2843  -20.0000 8.2843]\n      [line -20.0000 8.2843  -8.2843 20.0000]\n      [line -8.2843 20.0000  8.2843 20.0000]\n      [line 8.2843 20.0000  20.0000 8.2843]\n    ]]\n   prism [extrude 0 0 8 octagon]\n   hole [translate 15 0 0 [cylinder 2.5 8]]\n   holes [circular-pattern 0 0 0  0 0 1  8 360 hole]\n   flange [difference holes prism]\n  ]\n  [root flange \"steel\"]\n]"
}
2
create_cad_loon
err
6ms
args
{
  "source": "[let octagon [sketch 0 0 0  1 0 0  0 1 0\n  #[\n    [line 20.0000 8.2843  20.0000 -8.2843]\n    [line 20.0000 -8.2843  8.2843 -20.0000]\n    [line 8.2843 -20.0000  -8.2843 -20.0000]\n    [line -8.2843 -20.0000  -20.0000 -8.2843]\n    [line -20.0000 -8.2843  -20.0000 8.2843]\n    [line -20.0000 8.2843  -8.2843 20.0000]\n    [line -8.2843 20.0000  8.2843 20.0000]\n    [line 8.2843 20.0000  20.0000 8.2843]\n  ]]\n  [let prism [extrude 0 0 8 octagon]\n    [let hole [translate 15 0 0 [cylinder 2.5 8]]\n      [let holes [circular-pattern 0 0 0  0 0 1  8 360 hole]\n        [root [difference holes prism] \"steel\"]\n      ]\n    ]\n  ]\n]"
}
3
create
err
9ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "sketch_2_d",
  "name": "Octagon",
  "params": {
    "origin": [
      0,
      0,
      0
    ],
    "x_axis": [
      1,
      0,
      0
    ],
    "y_axis": [
      0,
      1,
      0
    ],
    "segments": [
      {
        "Line": {
          "start": [
            20,
            8.2843
          ],
          "end": [
            20,
            -8.2843
          ]
        }
      },
      {
        "Line": {
          "start": [
            20,
            -8.2843
          ],
          "end": [
            8.2843,
            -20
          ]
        }
      },
      {
        "Line": {
          "start": [
            8.2843,
            -20
          ],
          "end": [
            -8.2843,
            -20
          ]
        }
      },
      {
        "Line": {
          "start": [
            -8.2843,
            -20
          ],
          "end": [
            -20,
            -8.2843
          ]
        }
      },
      {
        "Line": {
          "start": [
            -20,
            -8.2843
          ],
          "end": [
            -20,
            8.2843
          ]
        }
      },
      {
        "Line": {
          "start": [
            -20,
            8.2843
          ],
          "end": [
            -8.2843,
            20
          ]
        }
      },
      {
        "Line": {
          "start": [
            -8.2843,
            20
          ],
          "end": [
            8.2843,
            20
          ]
        }
      },
      {
        "Line": {
          "start": [
            8.2843,
            20
          ],
          "end": [
            20,
            8.2843
          ]
        }
      }
    ]
  }
}
4
get_changelog
ok
3ms
args
{
  "feature": "sketch",
  "limit": 3
}
5
create_cad_loon
err
2ms
args
{
  "source": "[let octagon [sketch 0 0 0 1 0 0 0 1 0 #[[line 20.0000 8.2843 20.0000 -8.2843] [line 20.0000 -8.2843 8.2843 -20.0000] [line 8.2843 -20.0000 -8.2843 -20.0000] [line -8.2843 -20.0000 -20.0000 -8.2843] [line -20.0000 -8.2843 -20.0000 8.2843] [line -20.0000 8.2843 -8.2843 20.0000] [line -8.2843 20.0000 8.2843 20.0000] [line 8.2843 20.0000 20.0000 8.2843]]] [root [difference [circular-pattern 0 0 0 0 0 1 8 360 [translate 15 0 0 [cylinder 2.5 8]]] [extrude 0 0 8 octagon]] \"steel\"]]"
}
6
create_cad_loon
ok
8ms
args
{
  "source": "[root [difference [circular-pattern 0 0 0 0 0 1 8 360 [translate 15 0 0 [cylinder 2.5 8]]] [extrude 0 0 8 [sketch 0 0 0 1 0 0 0 1 0 #[[line 20.0000 8.2843 20.0000 -8.2843] [line 20.0000 -8.2843 8.2843 -20.0000] [line 8.2843 -20.0000 -8.2843 -20.0000] [line -8.2843 -20.0000 -20.0000 -8.2843] [line -20.0000 -8.2843 -20.0000 8.2843] [line -20.0000 8.2843 -8.2843 20.0000] [line -8.2843 20.0000 8.2843 20.0000] [line 8.2843 20.0000 20.0000 8.2843]]]]] \"steel\"]"
}
7
create
err
3ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "sketch_2_d",
  "name": "OctagonSketch",
  "params": {
    "origin": [
      0,
      0,
      0
    ],
    "x_axis": [
      1,
      0,
      0
    ],
    "y_axis": [
      0,
      1,
      0
    ],
    "segments": [
      {
        "Line": {
          "start": [
            20,
            8.2843
          ],
          "end": [
            20,
            -8.2843
          ]
        }
      }
    ]
  }
}
8
create
err
2ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "sketch_2_d",
  "name": "OctagonSketch",
  "params": {
    "type": "sketch_2_d",
    "origin": [
      0,
      0,
      0
    ],
    "x_axis": [
      1,
      0,
      0
    ],
    "y_axis": [
      0,
      1,
      0
    ],
    "segments": [
      {
        "type": "line",
        "start": [
          20,
          8.2843
        ],
        "end": [
          20,
          -8.2843
        ]
      }
    ]
  }
}
9
create
err
4ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "sketch_2_d",
  "name": "OctagonSketch",
  "params": {
    "type": "Sketch2D",
    "origin": [
      0,
      0,
      0
    ],
    "x_axis": [
      1,
      0,
      0
    ],
    "y_axis": [
      0,
      1,
      0
    ],
    "segments": [
      {
        "Line": {
          "start": [
            20,
            8.2843
          ],
          "end": [
            20,
            -8.2843
          ]
        }
      },
      {
        "Line": {
          "start": [
            20,
            -8.2843
          ],
          "end": [
            8.2843,
            -20
          ]
        }
      },
      {
        "Line": {
          "start": [
            8.2843,
            -20
          ],
          "end": [
            -8.2843,
            -20
          ]
        }
      },
      {
        "Line": {
          "start": [
            -8.2843,
            -20
          ],
          "end": [
            -20,
            -8.2843
          ]
        }
      },
      {
        "Line": {
          "start": [
            -20,
            -8.2843
          ],
          "end": [
            -20,
            8.2843
          ]
        }
      },
      {
        "Line": {
          "start": [
            -20,
            8.2843
          ],
          "end": [
            -8.2843,
            20
          ]
        }
      },
      {
        "Line": {
          "start": [
            -8.2843,
            20
          ],
          "end": [
            8.2843,
            20
          ]
        }
      },
      {
        "Line": {
          "start": [
            8.2843,
            20
          ],
          "end": [
            20,
            8.2843
          ]
        }
      }
    ]
  }
}
10
create
err
1ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "sketch_2_d",
  "name": "OctagonSketch",
  "params": {
    "origin": [
      0,
      0,
      0
    ],
    "x_axis": [
      1,
      0,
      0
    ],
    "y_axis": [
      0,
      1,
      0
    ],
    "segments": [
      {
        "type": "Line",
        "start": [
          20,
          8.2843
        ],
        "end": [
          20,
          -8.2843
        ]
      },
      {
        "type": "Line",
        "start": [
          20,
          -8.2843
        ],
        "end": [
          8.2843,
          -20
        ]
      },
      {
        "type": "Line",
        "start": [
          8.2843,
          -20
        ],
        "end": [
          -8.2843,
          -20
        ]
      },
      {
        "type": "Line",
        "start": [
          -8.2843,
          -20
        ],
        "end": [
          -20,
          -8.2843
        ]
      },
      {
        "type": "Line",
        "start": [
          -20,
          -8.2843
        ],
        "end": [
          -20,
          8.2843
        ]
      },
      {
        "type": "Line",
        "start": [
          -20,
          8.2843
        ],
        "end": [
          -8.2843,
          20
        ]
      },
      {
        "type": "Line",
        "start": [
          -8.2843,
          20
        ],
        "end": [
          8.2843,
          20
        ]
      },
      {
        "type": "Line",
        "start": [
          8.2843,
          20
        ],
        "end": [
          20,
          8.2843
        ]
      }
    ]
  }
}
11
create
ok
3ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "sketch_2_d",
  "name": "OctagonSketch",
  "params": {
    "origin": [
      0,
      0,
      0
    ],
    "x_dir": [
      1,
      0,
      0
    ],
    "y_dir": [
      0,
      1,
      0
    ],
    "segments": [
      {
        "type": "Line",
        "start": [
          20,
          8.2843
        ],
        "end": [
          20,
          -8.2843
        ]
      },
      {
        "type": "Line",
        "start": [
          20,
          -8.2843
        ],
        "end": [
          8.2843,
          -20
        ]
      },
      {
        "type": "Line",
        "start": [
          8.2843,
          -20
        ],
        "end": [
          -8.2843,
          -20
        ]
      },
      {
        "type": "Line",
        "start": [
          -8.2843,
          -20
        ],
        "end": [
          -20,
          -8.2843
        ]
      },
      {
        "type": "Line",
        "start": [
          -20,
          -8.2843
        ],
        "end": [
          -20,
          8.2843
        ]
      },
      {
        "type": "Line",
        "start": [
          -20,
          8.2843
        ],
        "end": [
          -8.2843,
          20
        ]
      },
      {
        "type": "Line",
        "start": [
          -8.2843,
          20
        ],
        "end": [
          8.2843,
          20
        ]
      },
      {
        "type": "Line",
        "start": [
          8.2843,
          20
        ],
        "end": [
          20,
          8.2843
        ]
      }
    ]
  }
}
12
create
ok
5ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "extrude",
  "name": "OctagonPrism",
  "params": {
    "sketch": 1,
    "direction": [
      0,
      0,
      8
    ]
  },
  "parent_part_id": "1"
}
13
read
ok
1ms
args
{
  "document_id": "doc_1781201761818_1"
}
14
read
ok
2ms
args
{
  "document_id": "doc_1781201761818_1",
  "part_id": "2"
}
15
delete
ok
1ms
args
{
  "document_id": "doc_1781201761818_1",
  "part_id": "1"
}
16
create
err
1ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "cylinder",
  "name": "HoleCyl",
  "params": {
    "radius": 2.5,
    "height": 8
  }
}
17
read
ok
2ms
args
{
  "document_id": "doc_1781201761818_1"
}
18
create
err
3ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "cylinder",
  "name": "HoleCyl",
  "params": {
    "radius": 2.5,
    "height": 8
  }
}
19
create
err
3ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "cylinder",
  "name": "HoleCyl",
  "params": {
    "r": 2.5,
    "h": 8
  }
}
20
create
ok
2ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "cylinder",
  "name": "HoleCyl",
  "params": {
    "radius": 2.5,
    "height": 8,
    "segments": 32
  }
}
21
create
err
3ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "translate",
  "name": "HoleAtX",
  "params": {
    "offset": [
      15,
      0,
      0
    ]
  },
  "parent_part_id": "3"
}
22
create
err
3ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "translate",
  "name": "HoleAtX",
  "params": {
    "offset": {
      "x": 15,
      "y": 0,
      "z": 0
    }
  },
  "parent_part_id": "3"
}
23
create
ok
2ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "translate",
  "name": "HoleAtX",
  "params": {
    "offset": {
      "x": 15,
      "y": 0,
      "z": 0
    },
    "child": 3
  },
  "parent_part_id": "3"
}
24
create
err
3ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "circular_pattern",
  "name": "HolePattern",
  "params": {
    "child": 4,
    "axis_origin": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "axis_direction": {
      "x": 0,
      "y": 0,
      "z": 1
    },
    "count": 8,
    "total_angle_deg": 360
  },
  "parent_part_id": "4"
}
25
create
err
1ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "circular_pattern",
  "name": "HolePattern",
  "params": {
    "child": 4,
    "axis_origin": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "axis_dir": {
      "x": 0,
      "y": 0,
      "z": 1
    },
    "count": 8,
    "total_angle_deg": 360
  },
  "parent_part_id": "4"
}
26
create
ok
2ms
args
{
  "document_id": "doc_1781201761818_1",
  "type": "circular_pattern",
  "name": "HolePattern",
  "params": {
    "child": 4,
    "axis_origin": {
      "x": 0,
      "y": 0,
      "z": 0
    },
    "axis_dir": {
      "x": 0,
      "y": 0,
      "z": 1
    },
    "count": 8,
    "angle_deg": 360
  },
  "parent_part_id": "4"
}
27
read
ok
2ms
args
{
  "document_id": "doc_1781201761818_1"
}
28
read
ok
2ms
args
{
  "document_id": "doc_1781201761818_1",
  "part_id": "5"
}
29
delete
ok
2ms
args
{
  "document_id": "doc_1781201761818_1",
  "part_id": "3"
}
30
delete
ok
2ms
args
{
  "document_id": "doc_1781201761818_1",
  "part_id": "4"
}
31
read
ok
2ms
args
{
  "document_id": "doc_1781201761818_1"
}
32
read
ok
1ms
args
{
  "document_id": "doc_1781201761818_1",
  "part_id": "5"
}
33
get_document
ok
1ms
args
{
  "document_id": "doc_1781201761818_1"
}

What the model built

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

.vcad source

{
  "version": "0.1",
  "nodes": {
    "1": {
      "id": 1,
      "name": "OctagonSketch",
      "op": {
        "type": "Sketch2D",
        "origin": {
          "x": 0,
          "y": 0,
          "z": 0
        },
        "x_dir": {
          "x": 1,
          "y": 0,
          "z": 0
        },
        "y_dir": {
          "x": 0,
          "y": 1,
          "z": 0
        },
        "segments": [
          {
            "type": "Line",
            "start": {
              "x": 20,
              "y": 8.2843
            },
            "end": {
              "x": 20,
              "y": -8.2843
            }
          },
          {
            "type": "Line",
            "start": {
              "x": 20,
              "y": -8.2843
            },
            "end": {
              "x": 8.2843,
              "y": -20
            }
          },
          {
            "type": "Line",
            "start": {
              "x": 8.2843,
              "y": -20
            },
            "end": {
              "x": -8.2843,
              "y": -20
            }
          },
          {
            "type": "Line",
            "start": {
              "x": -8.2843,
              "y": -20
            },
            "end": {
              "x": -20,
              "y": -8.2843
            }
          },
          {
            "type": "Line",
            "start": {
              "x": -20,
              "y": -8.2843
            },
            "end": {
              "x": -20,
              "y": 8.2843
            }
          },
          {
            "type": "Line",
            "start": {
              "x": -20,
              "y": 8.2843
            },
            "end": {
              "x": -8.2843,
              "y": 20
            }
          },
          {
            "type": "Line",
            "start": {
              "x": -8.2843,
              "y": 20
            },
            "end": {
              "x": 8.2843,
              "y": 20
            }
          },
          {
            "type": "Line",
            "start": {
              "x": 8.2843,
              "y": 20
            },
            "end": {
              "x": 20,
              "y": 8.2843
            }
          }
        ]
      }
    },
    "2": {
      "id": 2,
      "name": "OctagonPrism",
      "op": {
        "type": "Extrude",
        "sketch": 1,
        "direction": {
          "x": 0,
          "y": 0,
          "z": 8
        }
      }
    },
    "3": {
      "id": 3,
      "name": "HoleCyl",
      "op": {
        "type": "Cylinder",
        "radius": 2.5,
        "height": 8,
        "segments": 32
      }
    },
    "4": {
      "id": 4,
      "name": "HoleAtX",
      "op": {
        "type": "Translate",
        "child": 3,
        "offset": {
          "x": 15,
          "y": 0,
          "z": 0
        }
      }
    },
    "5": {
      "id": 5,
      "name": "HolePattern",
      "op": {
        "type": "CircularPattern",
        "child": 4,
        "axis_origin": {
          "x": 0,
          "y": 0,
          "z": 0
        },
        "axis_dir": {
          "x": 0,
          "y": 0,
          "z": 1
        },
        "count": 8,
        "angle_deg": 360
      }
    }
  },
  "materials": {},
  "part_materials": {},
  "roots": [
    {
      "root": 2,
      "material": "default"
    },
    {
      "root": 5,
      "material": "default"
    }
  ]
}

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