← mecheval / run / a5-ribbed-plate-01 / claude-mcp-claude-opus-4-7 / 20260611T225355Z-2463

run 20260611T225355Z-2463

a5-ribbed-plate-01 · claude-mcp-claude-opus-4-7

Summary

statusfail
score0.50 (3/6)
submissionself-run
modelclaude-mcp-claude-opus-4-7 (anthropic)
started2026-06-11T22:53:55.198Z
ended2026-06-11T22:55:38.392Z
tokens624,855 in · 6,407 out · 631,262 total
wallclock103.1s
tool calls45
task hash9b12379e05299981…
vcad hash16440533c256d41b…

Prompt

Make a ribbed plate as a single solid. The top plate is 120mm × 80mm × 10mm with its bottom face at z = 10 and top face at z = 20, centered in X and Y (x in [-60, 60], y in [-40, 40]). Three stiffening ribs run along the full length of the plate (along X) on the underside: each rib is 120mm long × 8mm wide × 10mm tall (z = 0 to z = 10). Rib A is centered at y = -24: it spans x in [-60, 60], y in [-28, -20], z in [0, 10]. Rib B is centered at y = 0: it spans x in [-60, 60], y in [-4, 4], z in [0, 10]. Rib C is centered at y = 24: it spans x in [-60, 60], y in [20, 28], z in [0, 10]. Four bolt holes of diameter 8mm, axes parallel to Z, pass through the entire assembly height (z = 0 to z = 20), located at the four corners: (45, 30), (-45, 30), (-45, -30), (45, -30). Output a single solid.

Checks

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

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

details: {
  "actual_max": [
    60,
    40,
    20
  ],
  "actual_min": [
    -60,
    -40,
    0
  ],
  "deviation_max": [
    0,
    0,
    0
  ],
  "deviation_min": [
    0,
    0,
    0
  ],
  "max_abs_deviation_mm": 0,
  "tolerance_mm": 0.1
}
2
mass_props
fail
volume off by 291.0%
params + details
params: {
  "type": "mass_props",
  "volume_mm3": 120778.76,
  "center_of_mass": [
    0,
    0,
    12.78
  ],
  "tolerance_pct": 1
}

details: {
  "center_of_mass": {
    "actual": [
      0.051159615839779245,
      -0.9434175215758154,
      13.141167509961317
    ],
    "bbox_diagonal_mm": 145.60219778561037,
    "deviation": [
      0.051159615839779245,
      -0.9434175215758154,
      0.36116750996131763
    ],
    "max_abs_deviation_mm": 0.9434175215758154,
    "pass": true,
    "spec": [
      0,
      0,
      12.78
    ],
    "tolerance_mm": 1.4560219778561037
  },
  "volume": {
    "actual_mm3": 472264.407925629,
    "deviation_pct": 291.0161090622465,
    "pass": false,
    "spec_mm3": 120778.76,
    "tolerance_pct": 1
  }
}
3
hole_count
fail
found 1/4 holes of ⌀8mm
params + details
params: {
  "type": "hole_count",
  "diameter_mm": 8,
  "expected": 4,
  "diameter_tolerance_mm": 0.05
}

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

details: {
  "diameter_mm": 8,
  "per_expected": [
    {
      "distance_mm": 0,
      "matched_hole": [
        45,
        30
      ],
      "pass": true,
      "spec_xy": [
        45,
        30
      ]
    },
    {
      "pass": false,
      "reason": "no candidate cylindrical feature of this diameter remained unmatched",
      "spec_xy": [
        -45,
        30
      ]
    },
    {
      "pass": false,
      "reason": "no candidate cylindrical feature of this diameter remained unmatched",
      "spec_xy": [
        -45,
        -30
      ]
    },
    {
      "pass": false,
      "reason": "no candidate cylindrical feature of this diameter remained unmatched",
      "spec_xy": [
        45,
        -30
      ]
    }
  ],
  "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": [
          60,
          40,
          20
        ],
        "original_min": [
          -60,
          -40,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          60,
          40,
          20
        ],
        "roundtripped_min": [
          -60,
          -40,
          0
        ],
        "tolerance_mm": 1.4560219778561037
      },
      "index": 0,
      "pass": true,
      "volume": {
        "deviation_pct": 0,
        "original_mm3": 105600,
        "pass": true,
        "roundtripped_mm3": 105600
      }
    },
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          60,
          40,
          20
        ],
        "original_min": [
          -60,
          -40,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          60,
          40,
          20
        ],
        "roundtripped_min": [
          -60,
          -40,
          0
        ],
        "tolerance_mm": 1.4560219778561037
      },
      "index": 1,
      "pass": true,
      "volume": {
        "deviation_pct": 0,
        "original_mm3": 115200,
        "pass": true,
        "roundtripped_mm3": 115200
      }
    },
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          60,
          40,
          20
        ],
        "original_min": [
          -60,
          -40,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          60,
          40,
          20
        ],
        "roundtripped_min": [
          -60,
          -40,
          0
        ],
        "tolerance_mm": 1.4560219778561037
      },
      "index": 2,
      "pass": true,
      "volume": {
        "deviation_pct": 0,
        "original_mm3": 124800,
        "pass": true,
        "roundtripped_mm3": 124800
      }
    },
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          60,
          40,
          20
        ],
        "original_min": [
          -60,
          -40,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          60,
          40,
          20
        ],
        "roundtripped_min": [
          -60,
          -40,
          0
        ],
        "tolerance_mm": 1.4560219778561037
      },
      "index": 3,
      "pass": true,
      "volume": {
        "deviation_pct": 0.21365784365497842,
        "original_mm3": 125660.71242435416,
        "pass": true,
        "roundtripped_mm3": 125392.2284558668
      }
    },
    {
      "bbox": {
        "max_abs_deviation_mm": 0,
        "original_max": [
          4,
          4,
          20
        ],
        "original_min": [
          -4,
          -4,
          0
        ],
        "pass": true,
        "roundtripped_max": [
          4,
          4,
          20
        ],
        "roundtripped_min": [
          -4,
          -4,
          0
        ],
        "tolerance_mm": 0.22978250586152116
      },
      "index": 4,
      "pass": true,
      "volume": {
        "deviation_pct": 0.48152942952491345,
        "original_mm3": 1003.6955012748532,
        "pass": true,
        "roundtripped_mm3": 998.8624120533972
      }
    }
  ],
  "tolerance_pct": 1
}

Tool calls

0
open_document
ok
2ms
args
{}
1
create_cad_loon
ok
10ms
args
{
  "source": "[let plate [translate -60 -40 10 [cube 120 80 10]]\n [let ribA [translate -60 -28 0 [cube 120 8 10]]\n  [let ribB [translate -60 -4 0 [cube 120 8 10]]\n   [let ribC [translate -60 20 0 [cube 120 8 10]]\n    [let body [union ribA [union ribB [union ribC plate]]]\n     [let h1 [translate 45 30 0 [cylinder 4 20]]\n      [let h2 [translate -45 30 0 [cylinder 4 20]]\n       [let h3 [translate -45 -30 0 [cylinder 4 20]]\n        [let h4 [translate 45 -30 0 [cylinder 4 20]]\n         [difference h1 [difference h2 [difference h3 [difference h4 body]]]]]]]]]]]]]",
  "format": "json"
}
2
create
ok
8ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "cube",
  "name": "PlateRaw",
  "params": {
    "size": {
      "x": 120,
      "y": 80,
      "z": 10
    }
  }
}
3
create
ok
3ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "cube",
  "name": "RibARaw",
  "params": {
    "size": {
      "x": 120,
      "y": 8,
      "z": 10
    }
  }
}
4
create
ok
1ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "cube",
  "name": "RibBRaw",
  "params": {
    "size": {
      "x": 120,
      "y": 8,
      "z": 10
    }
  }
}
5
create
ok
1ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "cube",
  "name": "RibCRaw",
  "params": {
    "size": {
      "x": 120,
      "y": 8,
      "z": 10
    }
  }
}
6
create
err
2ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "cylinder",
  "name": "HoleRaw",
  "params": {
    "radius": 4,
    "height": 20
  }
}
7
read
ok
3ms
args
{
  "document_id": "doc_1781218435368_1"
}
8
delete
ok
4ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "1"
}
9
delete
ok
1ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "2"
}
10
delete
ok
1ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "3"
}
11
delete
ok
1ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "4"
}
12
create
ok
3ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "cube",
  "name": "Plate",
  "params": {
    "size": {
      "x": 120,
      "y": 80,
      "z": 10
    }
  }
}
13
create
err
3ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "translate",
  "name": "PlatePos",
  "parent_part_id": "1",
  "params": {
    "offset": {
      "x": -60,
      "y": -40,
      "z": 10
    }
  }
}
14
create
ok
3ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "translate",
  "name": "PlatePos",
  "parent_part_id": "1",
  "params": {
    "child": 1,
    "offset": {
      "x": -60,
      "y": -40,
      "z": 10
    }
  }
}
15
create
ok
6ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "cube",
  "name": "RibARaw",
  "params": {
    "size": {
      "x": 120,
      "y": 8,
      "z": 10
    }
  }
}
16
create
ok
3ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "translate",
  "name": "RibAPos",
  "parent_part_id": "3",
  "params": {
    "child": 3,
    "offset": {
      "x": -60,
      "y": -28,
      "z": 0
    }
  }
}
17
read
ok
2ms
args
{
  "document_id": "doc_1781218435368_1"
}
18
get_document
ok
3ms
args
{
  "document_id": "doc_1781218435368_1"
}
19
delete
ok
5ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "1"
}
20
delete
ok
1ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "3"
}
21
get_document
ok
2ms
args
{
  "document_id": "doc_1781218435368_1"
}
22
create
err
4ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "union",
  "name": "PlatePlusA",
  "parent_part_id": "2",
  "params": {
    "children": [
      2,
      4
    ]
  }
}
23
create
ok
3ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "union",
  "name": "PlatePlusA",
  "parent_part_id": "2",
  "params": {
    "left": 2,
    "right": 4
  }
}
24
get_document
ok
3ms
args
{
  "document_id": "doc_1781218435368_1"
}
25
delete
ok
1ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "2"
}
26
delete
ok
0ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "4"
}
27
get_document
ok
1ms
args
{
  "document_id": "doc_1781218435368_1"
}
28
create
ok
3ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "cube",
  "name": "RibBRaw",
  "params": {
    "size": {
      "x": 120,
      "y": 8,
      "z": 10
    }
  }
}
29
create
ok
2ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "translate",
  "name": "RibBPos",
  "parent_part_id": "6",
  "params": {
    "child": 6,
    "offset": {
      "x": -60,
      "y": -4,
      "z": 0
    }
  }
}
30
create
ok
3ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "union",
  "name": "PlatePlusAB",
  "parent_part_id": "5",
  "params": {
    "left": 5,
    "right": 7
  }
}
31
delete
ok
2ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "6"
}
32
delete
ok
1ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "7"
}
33
create
ok
3ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "cube",
  "name": "RibCRaw",
  "params": {
    "size": {
      "x": 120,
      "y": 8,
      "z": 10
    }
  }
}
34
create
ok
4ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "translate",
  "name": "RibCPos",
  "parent_part_id": "9",
  "params": {
    "child": 9,
    "offset": {
      "x": -60,
      "y": 20,
      "z": 0
    }
  }
}
35
create
ok
3ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "union",
  "name": "PlatePlusABC",
  "parent_part_id": "8",
  "params": {
    "left": 8,
    "right": 10
  }
}
36
delete
ok
4ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "9"
}
37
delete
ok
1ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "10"
}
38
create
ok
4ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "cylinder",
  "name": "HoleRaw1",
  "params": {
    "radius": 4,
    "height": 20,
    "segments": 64
  }
}
39
create
ok
2ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "translate",
  "name": "Hole1Pos",
  "parent_part_id": "12",
  "params": {
    "child": 12,
    "offset": {
      "x": 45,
      "y": 30,
      "z": 0
    }
  }
}
40
create
ok
4ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "difference",
  "name": "MinusHole1",
  "parent_part_id": "11",
  "params": {
    "left": 11,
    "right": 13
  }
}
41
delete
ok
3ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "12"
}
42
delete
ok
1ms
args
{
  "document_id": "doc_1781218435368_1",
  "part_id": "13"
}
43
create
ok
2ms
args
{
  "document_id": "doc_1781218435368_1",
  "type": "cylinder",
  "name": "HoleRaw2",
  "params": {
    "radius": 4,
    "height": 20,
    "segments": 64
  }
}
44
get_document
ok
1ms
args
{
  "document_id": "doc_1781218435368_1"
}

What the model built

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

.vcad source

{
  "version": "0.1",
  "nodes": {
    "1": {
      "id": 1,
      "name": "Plate",
      "op": {
        "type": "Cube",
        "size": {
          "x": 120,
          "y": 80,
          "z": 10
        }
      }
    },
    "2": {
      "id": 2,
      "name": "PlatePos",
      "op": {
        "type": "Translate",
        "child": 1,
        "offset": {
          "x": -60,
          "y": -40,
          "z": 10
        }
      }
    },
    "3": {
      "id": 3,
      "name": "RibARaw",
      "op": {
        "type": "Cube",
        "size": {
          "x": 120,
          "y": 8,
          "z": 10
        }
      }
    },
    "4": {
      "id": 4,
      "name": "RibAPos",
      "op": {
        "type": "Translate",
        "child": 3,
        "offset": {
          "x": -60,
          "y": -28,
          "z": 0
        }
      }
    },
    "5": {
      "id": 5,
      "name": "PlatePlusA",
      "op": {
        "type": "Union",
        "left": 2,
        "right": 4
      }
    },
    "6": {
      "id": 6,
      "name": "RibBRaw",
      "op": {
        "type": "Cube",
        "size": {
          "x": 120,
          "y": 8,
          "z": 10
        }
      }
    },
    "7": {
      "id": 7,
      "name": "RibBPos",
      "op": {
        "type": "Translate",
        "child": 6,
        "offset": {
          "x": -60,
          "y": -4,
          "z": 0
        }
      }
    },
    "8": {
      "id": 8,
      "name": "PlatePlusAB",
      "op": {
        "type": "Union",
        "left": 5,
        "right": 7
      }
    },
    "9": {
      "id": 9,
      "name": "RibCRaw",
      "op": {
        "type": "Cube",
        "size": {
          "x": 120,
          "y": 8,
          "z": 10
        }
      }
    },
    "10": {
      "id": 10,
      "name": "RibCPos",
      "op": {
        "type": "Translate",
        "child": 9,
        "offset": {
          "x": -60,
          "y": 20,
          "z": 0
        }
      }
    },
    "11": {
      "id": 11,
      "name": "PlatePlusABC",
      "op": {
        "type": "Union",
        "left": 8,
        "right": 10
      }
    },
    "12": {
      "id": 12,
      "name": "HoleRaw1",
      "op": {
        "type": "Cylinder",
        "radius": 4,
        "height": 20,
        "segments": 64
      }
    },
    "13": {
      "id": 13,
      "name": "Hole1Pos",
      "op": {
        "type": "Translate",
        "child": 12,
        "offset": {
          "x": 45,
          "y": 30,
          "z": 0
        }
      }
    },
    "14": {
      "id": 14,
      "name": "MinusHole1",
      "op": {
        "type": "Difference",
        "left": 11,
        "right": 13
      }
    },
    "15": {
      "id": 15,
      "name": "HoleRaw2",
      "op": {
        "type": "Cylinder",
        "radius": 4,
        "height": 20,
        "segments": 64
      }
    }
  },
  "materials": {},
  "part_materials": {},
  "roots": [
    {
      "root": 5,
      "material": "default"
    },
    {
      "root": 8,
      "material": "default"
    },
    {
      "root": 11,
      "material": "default"
    },
    {
      "root": 14,
      "material": "default"
    },
    {
      "root": 15,
      "material": "default"
    }
  ]
}

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