Step A (worked, fully shown): build the plate with a sketch-then-extrude, result = extrude(Rectangle(70, 45), amount=10); print result.bounding_box().size and result.volume, note the bbox is already 70 x 45 x 10 but the volume is 31500, a solid brick. Step B (the cut): introduce the hole as a boolean subtraction, result = result - Cylinder(radius=6, height=10); annotate 'Cylinder is a sketch-Circle extruded for you; the minus sign is the boolean cut that bores it through.' Re-print the volume and watch it drop to 30369.0. Step C (predict, no running): ask the learner to compute by hand how much volume one Ø12 x 10 hole removes (pi * 6**2 * 10 ≈ 1131) and confirm 31500 - 1131 matches the readout, tying the number to the geometry. Step D (independent, no code shown): final gate 02_plate asks for exactly the spec part, bbox [70, 45, 10] within 0.1 mm and volume 30369.0 within 5 mm³; the learner must produce the sketch, the extrude, and the cut from scratch.