{
  "schema_version": 1,
  "title": "Jimny V2 local interface fit coupons",
  "units": "mm",
  "coordinate_system": "right-handed XYZ; Z up; each print artifact Zmin=0",
  "status": "digitally checked fit-test coupons; NOT physically validated",
  "sample_count": 12,
  "source": {
    "path": "/home/aditya/jimny-organizers-v2/build_models.py",
    "sha256": "fa6a14ce5fca80fa1e9f8c96bf8ee1e01b86777c81cff92fb7725adf70a7ca3b",
    "excerpts": {
      "rail_profile": "def rail_profile(length,clearance=0):\n # YZ trapezoid: root 8, crown 14, rising 3 mm, 45-degree flanks.\n face=Plane.YZ*Polygon((-4,3),(4,3),(7,6),(-7,6),align=None)\n return Pos(-length/2,0,0)*extrude(face,amount=length)",
      "shoe_cut": "def shoe_cut(length):\n face=Plane.YZ*Polygon((-4.5,-1),(4.5,-1),(4.5,-.4),(7.5,2.6),(7.5,3.2),(-7.5,3.2),(-7.5,2.6),(-4.5,-.4),align=None)\n return Pos(-length/2,0,0)*extrude(face,amount=length)",
      "capsule": "def capsule():\n outer=loft([Ellipse(80,30),Pos(0,0,35)*Ellipse(88,38)])\n inside=loft([Pos(0,0,2.8)*Ellipse(77,27),Pos(0,0,36)*Ellipse(84.5,34.5)])\n shell=outer-inside\n for y in [-27.5,27.5]:shell+=Compound(children=(Pos(0,y,31.4)*box(125,25,2.4)).intersect(outer))\n for x in [0,60]:\n  for y in [-22,22]:shell-=Pos(x,y,28.6)*box(12.8,15,8)\n # Four tabs beneath the skin; straight motion aligns them with relief windows.\n lid=Pos(0,0,6.4)*loft([Ellipse(88,38),Pos(0,0,4)*Ellipse(83,33)])\n for x in [-30,30]:\n  for sign in [-1,1]:\n   lid+=Pos(x,sign*17,0)*box(12,6,2)\n   lid+=Pos(x,sign*13.4,1.6)*box(12,2,5)\n # Positive closed lock through rear tongue; small external lug preserves lens body.\n shell+=Pos(-70,0,2.8)*rr(14,15,32.2,5)\n shell-=Pos(-70,0,0)*cyl(2.8,40)\n lid-=Pos(-70,0,-1)*cyl(2.8,15)\n pin=lock_pin(2.4,40,10)\n support1=tray(22,43,9,7,t=2.2)\n support2=tray(25,40,11,7,t=2.2)\n travel=kf((0,ZERO,0),(.2,ZERO,0),(.65,[30,0,0],0),(1,[30,0,48],0))\n raw=[(shell,meta('capsule-shell','Lens shell','Straight internal ledges and release windows',explode=[0,0,0])),(lid,meta('capsule-lid','Sliding shoulder lid','Four captured tabs; 30 mm slide then lift',GREY,[0,0,29],travel,[0,0,70])),(support1,meta('capsule-saddle-a','Narrow eyewear saddle','Add cut felt; hard plastic is not padding',BLUE,[-32,0,3.3],None,[-15,0,25])),(support2,meta('capsule-saddle-b','Wide eyewear saddle','Spacing is an assumption; measure glasses',BLUE,[30,0,3.3],None,[15,0,40])),(pin,meta('capsule-lock','Rear lock pin','Withdraw fully before sliding lid',CORAL,[-70,0,.4],removed([0,0,65]),[0,0,110]))]\n def checks(parts,cads):\n  shell,lid=cads[:2]\n  for x in [0,60]:\n   for y in [-18,18]:assert not shell.is_inside((x,y,32.4)),('window',x,y)\n  assert shell.is_inside((-30,18,32.4))\n  # Trying to lift at closed X must contact the captive ledges.\n  hit=(Pos(0,0,2)*placed(lid,parts[1],0)).intersect(placed(shell,parts[0],0));assert hit and sum(s.volume for s in hit.solids())>.1\n  return dict(four_release_windows_void=True,closed_ledge_material=True,premature_lift_collision_mm3=sum(s.volume for s in hit.solids()),slide_mm=30,lift_after_slide_mm=48)\n finish(dict(id='capsule',name='Eyewear capsule',subtitle='Lens shell / slide then lift',detail='A narrowed keel and a softly crowned lid follow a folded-frame envelope. Four concealed tabs release through real windows, not a viewer trick.',motionLabel='Remove rear lock; slide lid 30 mm; lift only when tabs align.',placement='A portable case contained inside a measured closed glovebox or independently restrained soft bag. Never a visor or dashboard mount.',measure='Measure folded glasses length, width, height and lens/frame contact points. Interior saddles are provisional: fit cut felt and make sure no lens rests on hard plastic.',assembly='Drop both saddles into the shell and add cut felt for contact; no cushioning is claimed for the printed blue parts. Insert lid tabs through the four windows at +30 mm, lower and slide shut. Drop the rear lock pin through lid and shell lug. The removable pin requires external containment; test fit before use.'),raw,checks)",
      "swivel": "def swivel():\n pivot=[-58,8,0]\n base=bean_tray(14)+Pos(-58,8,0)*cyl(10,14)+Pos(-58,8,14)*cyl(4,15.5)\n base-=Pos(-58,8,-1)*cyl(1.7,34)\n base-=Pos(-58,8,0)*extrude(RegularPolygon(3.35,6),amount=2.5)\n # Real 95-degree stop track / stationary post, not an arbitrary animation limit.\n base+=Pos(-40,8,0)*cyl(2.2,16.6)\n base+=Pos(45,8,0)*cyl(5,14)\n base-=Pos(45,8,-1)*cyl(2.8,17)\n leaf=bean_tray(12)+Pos(-58,8,0)*cyl(10,14.7)+Pos(45,8,0)*cyl(5,12)\n leaf-=Pos(-58,8,-1)*cyl(4.4,18)\n leaf-=Pos(45,8,-1)*cyl(2.8,15)\n # Swept circular slot from -95\u00b0 to 0\u00b0, with round 2.6 mm endcaps.\n arc=Edge.make_circle(18,Plane(origin=(-58,8,0)),start_angle=-95,end_angle=0)\n groove=sweep(Circle(2.6,align=(Align.CENTER,Align.CENTER)),path=arc) if False else None\n for a in np.linspace(-95,0,97):\n  x=-58+18*math.cos(math.radians(a));y=8+18*math.sin(math.radians(a))\n  cut=Pos(x,y,-1)*cyl(2.6,5)\n  groove=cut if groove is None else groove+cut\n leaf-=groove\n cover=bean(h=3.2)\n cover-=Pos(-58,8,-1)*cyl(10.4,6)\n cover-=Pos(45,8,-1)*cyl(2.8,6)\n pin=lock_pin(2.4,30.2,11)\n rot=kf((0,ZERO,0),(.25,ZERO,0),(1,ZERO,95),pivot=pivot)\n covermove=kf((0,ZERO,0),(.12,ZERO,0),(.25,[0,0,40],0),(1,[0,0,40],95),pivot=pivot)\n raw=[(base,meta('swivel-base','Kidney lower well','M3 sleeved pivot and fixed stop post',DARK,explode=[0,0,0])),(leaf,meta('swivel-leaf','Nested upper leaf','95\u00b0 stop arc in floor',GREY,[0,0,14.4],rot,[0,0,35])),(cover,meta('swivel-cover','Transport cover','Clearance fit, not sealed; external band needed',DARK,[0,0,26.8],covermove,[0,0,75])),(pin,meta('swivel-lock','Transport lock pin','Through both layers and cover',BLUE,[45,8,.4],removed([0,0,80],.12),[0,0,110]))]\n def checks(parts,cads):\n  assert not cads[1].is_inside((-40,8,1)) and cads[0].is_inside((-40,8,15))\n  assert not cads[0].is_inside((-58,8,10))\n  # Over-rotation jams at track end; locked leaf cannot begin turning.\n  upper=placed(cads[1],parts[1],0).rotate(Axis(tuple(pivot),(0,0,1)),101)\n  hit=upper.intersect(cads[0]);assert hit and sum(s.volume for s in hit.solids())>.1\n  locked=placed(cads[1],parts[1],0).rotate(Axis(tuple(pivot),(0,0,1)),6).intersect(placed(cads[3],parts[3],0));assert locked and sum(s.volume for s in locked.solids())>.1\n  return dict(pivot_bore_void=True,stop_track_void=True,overrotation_collision_mm3=sum(s.volume for s in hit.solids()),locked_rotation_collision_mm3=sum(s.volume for s in locked.solids()),pivot_radial_clearance_mm=.4,axial_gap_mm=.4)\n finish(dict(id='swivel',name='Swivel valet',subtitle='Kidney leaf / 95\u00b0 sweep',detail='Two nested kidney-shaped wells and an off-centre sleeved pivot. Lift the cover, then swing the upper leaf aside to reveal what was underneath.',motionLabel='Remove blue lock, lift cover, then swivel upper leaf through 95\u00b0.',placement='Conditional alternative to the cassette. Lift out of the car and operate on a stable table while parked. Never swing inside an unmeasured glovebox.',measure='Check the closed footprint and separately reserve the larger open sweep. Test desk stability with representative lightweight contents; open geometry does not create extra storage volume.',assembly='Fit one M3 \u00d7 30 mm button-head through-screw, one 0.5 mm-thick wide M3 washer (12 mm outer diameter, 3.4 mm bore) and one M3 nut in the bottom hex pocket. The integral sleeve carries clamp load, not the moving leaf. Do not overtighten. The upper stop arc runs over the fixed base post. Add cover and blue through-lock. Pin is not captive; use an external band for transport and remove entire case before opening.'),raw,checks)"
    },
    "capsule_tab_note": "Current source is 12x6x2, not brief 12x8x2."
  },
  "samples": [
    {
      "id": "pod-1-male-c03",
      "family": "pod_dovetail",
      "role": "male",
      "files": {
        "step": "pod-1-male-c03.step",
        "stl": "pod-1-male-c03.stl"
      },
      "print_orientation": "Base on bed, rail up.",
      "dimensions_mm": [
        43.0,
        22.0,
        6.0
      ],
      "bounds_mm": [
        [
          -27.0,
          -11.0,
          0.0
        ],
        [
          16.0,
          11.0,
          6.0
        ]
      ],
      "step_volume_mm3": 3892.123606262314,
      "stl_volume_mm3": 3892.1239295625037,
      "step_valid": true,
      "step_solids": 1,
      "stl_watertight": true,
      "stl_components": 1,
      "stl_positive_volume": true,
      "bed_contact_area_mm2": 946.0,
      "probes": [
        {
          "name": "crown material",
          "point_mm": [
            0,
            6,
            5.5
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "outside flank",
          "point_mm": [
            0,
            7,
            4
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "base material",
          "point_mm": [
            0,
            9,
            1
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "number engraving",
          "point_mm": [
            -19.8,
            3,
            2.7
          ],
          "material": false,
          "passed": true
        }
      ],
      "sha256": {
        "pod-1-male-c03.step": "b1939597468a4d03128fae3917e1236fe348a586dbae387b484c8951c56507a9",
        "pod-1-male-c03.stl": "1c7ea1f22db9883cf54d72bc34ac04fc594e67ee0ae3c63371dcb445734c8893"
      },
      "pair_key": 1,
      "coordinate_flank_clearance_mm": 0.3,
      "normal_flank_clearance_mm": 0.21213203435596423,
      "crown_vertical_clearance_mm": 0.6,
      "print_to_test": {
        "rotation_x_deg": 0,
        "translation_mm": [
          0,
          0,
          0
        ]
      }
    },
    {
      "id": "pod-1-female-c03",
      "family": "pod_dovetail",
      "role": "female",
      "files": {
        "step": "pod-1-female-c03.step",
        "stl": "pod-1-female-c03.stl"
      },
      "print_orientation": "Solid roof on bed, channel faces up; turn over to mate.",
      "dimensions_mm": [
        35.0,
        31.0,
        6.199999809265137
      ],
      "bounds_mm": [
        [
          -23.0,
          -11.0,
          -0.0
        ],
        [
          12.0,
          20.0,
          6.199999809265137
        ]
      ],
      "step_volume_mm3": 4043.1236062623148,
      "stl_volume_mm3": 4043.1238430309318,
      "step_valid": true,
      "step_solids": 1,
      "stl_watertight": true,
      "stl_components": 1,
      "stl_positive_volume": true,
      "bed_contact_area_mm2": 878.0,
      "probes": [
        {
          "name": "channel void",
          "point_mm": [
            0,
            0,
            4.5
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "45 degree flank void",
          "point_mm": [
            0,
            6,
            4.2
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "side material",
          "point_mm": [
            0,
            9,
            4.2
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "roof material",
          "point_mm": [
            0,
            0,
            1
          ],
          "material": true,
          "passed": true
        }
      ],
      "sha256": {
        "pod-1-female-c03.step": "2a0ed5c748e9ec9bf512d4b76861d9b0c3a3e107229907fc040a08e2eb0bd32b",
        "pod-1-female-c03.stl": "b4341f6072c04ee508775aff368db5e7bccb26acfd2d2d1de4257afd71e24917"
      },
      "pair_key": 1,
      "coordinate_flank_clearance_mm": 0.3,
      "normal_flank_clearance_mm": 0.21213203435596423,
      "crown_vertical_clearance_mm": 0.6,
      "print_to_test": {
        "rotation_x_deg": 180,
        "translation_mm": [
          0,
          0,
          9.6
        ]
      }
    },
    {
      "id": "pod-2-male-c04",
      "family": "pod_dovetail",
      "role": "male",
      "files": {
        "step": "pod-2-male-c04.step",
        "stl": "pod-2-male-c04.stl"
      },
      "print_orientation": "Base on bed, rail up.",
      "dimensions_mm": [
        43.0,
        22.0,
        6.0
      ],
      "bounds_mm": [
        [
          -27.0,
          -11.0,
          0.0
        ],
        [
          16.0,
          11.0,
          6.0
        ]
      ],
      "step_volume_mm3": 3888.3632125246313,
      "stl_volume_mm3": 3888.363860775579,
      "step_valid": true,
      "step_solids": 1,
      "stl_watertight": true,
      "stl_components": 1,
      "stl_positive_volume": true,
      "bed_contact_area_mm2": 946.0,
      "probes": [
        {
          "name": "crown material",
          "point_mm": [
            0,
            6,
            5.5
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "outside flank",
          "point_mm": [
            0,
            7,
            4
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "base material",
          "point_mm": [
            0,
            9,
            1
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "number engraving",
          "point_mm": [
            -19.8,
            3,
            2.7
          ],
          "material": false,
          "passed": true
        }
      ],
      "sha256": {
        "pod-2-male-c04.step": "48271c334ac470a430d5cf2b1df5bf1a1e9bdf9bb18a94ecdd45ea2bdf179b4d",
        "pod-2-male-c04.stl": "a7386c29b953afbc269eb3db71a626ad1223f45f3825caa989fb0cb740e09174"
      },
      "pair_key": 2,
      "coordinate_flank_clearance_mm": 0.4,
      "normal_flank_clearance_mm": 0.282842712474619,
      "crown_vertical_clearance_mm": 0.6,
      "print_to_test": {
        "rotation_x_deg": 0,
        "translation_mm": [
          0,
          0,
          0
        ]
      }
    },
    {
      "id": "pod-2-female-c04",
      "family": "pod_dovetail",
      "role": "female",
      "files": {
        "step": "pod-2-female-c04.step",
        "stl": "pod-2-female-c04.stl"
      },
      "print_orientation": "Solid roof on bed, channel faces up; turn over to mate.",
      "dimensions_mm": [
        35.0,
        31.0,
        6.199999809265137
      ],
      "bounds_mm": [
        [
          -23.0,
          -11.0,
          -0.0
        ],
        [
          12.0,
          20.0,
          6.199999809265137
        ]
      ],
      "step_volume_mm3": 4016.9632125246317,
      "stl_volume_mm3": 4016.963755090714,
      "step_valid": true,
      "step_solids": 1,
      "stl_watertight": true,
      "stl_components": 1,
      "stl_positive_volume": true,
      "bed_contact_area_mm2": 878.0,
      "probes": [
        {
          "name": "channel void",
          "point_mm": [
            0,
            0,
            4.5
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "45 degree flank void",
          "point_mm": [
            0,
            6,
            4.2
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "side material",
          "point_mm": [
            0,
            9,
            4.2
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "roof material",
          "point_mm": [
            0,
            0,
            1
          ],
          "material": true,
          "passed": true
        }
      ],
      "sha256": {
        "pod-2-female-c04.step": "62cc2d5967920b81108fe31da5bb1ff0e84c259f073600ba15cd19bb9cadeb53",
        "pod-2-female-c04.stl": "c6b59e8c29dac386c1b7578281e6b5f87a552aea14fda2016c3d89354248e5fe"
      },
      "pair_key": 2,
      "coordinate_flank_clearance_mm": 0.4,
      "normal_flank_clearance_mm": 0.282842712474619,
      "crown_vertical_clearance_mm": 0.6,
      "print_to_test": {
        "rotation_x_deg": 180,
        "translation_mm": [
          0,
          0,
          9.6
        ]
      }
    },
    {
      "id": "pod-3-male-c05",
      "family": "pod_dovetail",
      "role": "male",
      "files": {
        "step": "pod-3-male-c05.step",
        "stl": "pod-3-male-c05.stl"
      },
      "print_orientation": "Base on bed, rail up.",
      "dimensions_mm": [
        43.0,
        22.0,
        6.0
      ],
      "bounds_mm": [
        [
          -27.0,
          -11.0,
          0.0
        ],
        [
          16.0,
          11.0,
          6.0
        ]
      ],
      "step_volume_mm3": 3887.5668187869464,
      "stl_volume_mm3": 3887.5677908530665,
      "step_valid": true,
      "step_solids": 1,
      "stl_watertight": true,
      "stl_components": 1,
      "stl_positive_volume": true,
      "bed_contact_area_mm2": 946.0,
      "probes": [
        {
          "name": "crown material",
          "point_mm": [
            0,
            6,
            5.5
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "outside flank",
          "point_mm": [
            0,
            7,
            4
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "base material",
          "point_mm": [
            0,
            9,
            1
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "number engraving",
          "point_mm": [
            -19.8,
            3,
            2.7
          ],
          "material": false,
          "passed": true
        }
      ],
      "sha256": {
        "pod-3-male-c05.step": "deb99f7bfb7c8fa8d6f4851488a2daf26c0dfa58cab3ad39d92ad8dcae929ab4",
        "pod-3-male-c05.stl": "38325f9a1e690345e5b80aabff1b851f3ca2195cf94f023930d6212eea7d6d75"
      },
      "pair_key": 3,
      "coordinate_flank_clearance_mm": 0.5,
      "normal_flank_clearance_mm": 0.35355339059327373,
      "crown_vertical_clearance_mm": 0.6,
      "print_to_test": {
        "rotation_x_deg": 0,
        "translation_mm": [
          0,
          0,
          0
        ]
      }
    },
    {
      "id": "pod-3-female-c05",
      "family": "pod_dovetail",
      "role": "female",
      "files": {
        "step": "pod-3-female-c05.step",
        "stl": "pod-3-female-c05.stl"
      },
      "print_orientation": "Solid roof on bed, channel faces up; turn over to mate.",
      "dimensions_mm": [
        35.0,
        31.0,
        6.199999809265137
      ],
      "bounds_mm": [
        [
          -23.0,
          -11.0,
          -0.0
        ],
        [
          12.0,
          20.0,
          6.199999809265137
        ]
      ],
      "step_volume_mm3": 3993.766818786944,
      "stl_volume_mm3": 3993.767707932891,
      "step_valid": true,
      "step_solids": 1,
      "stl_watertight": true,
      "stl_components": 1,
      "stl_positive_volume": true,
      "bed_contact_area_mm2": 878.0,
      "probes": [
        {
          "name": "channel void",
          "point_mm": [
            0,
            0,
            4.5
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "45 degree flank void",
          "point_mm": [
            0,
            6,
            4.2
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "side material",
          "point_mm": [
            0,
            9,
            4.2
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "roof material",
          "point_mm": [
            0,
            0,
            1
          ],
          "material": true,
          "passed": true
        }
      ],
      "sha256": {
        "pod-3-female-c05.step": "ba57d1ade735b973f10545ff756c5843eefc3577f0f47aa2cbc41440d6f60b89",
        "pod-3-female-c05.stl": "a9165bc49adc720685ee1d1a343bb30a351b48f312f763d68185cf031dfc96f2"
      },
      "pair_key": 3,
      "coordinate_flank_clearance_mm": 0.5,
      "normal_flank_clearance_mm": 0.35355339059327373,
      "crown_vertical_clearance_mm": 0.6,
      "print_to_test": {
        "rotation_x_deg": 180,
        "translation_mm": [
          0,
          0,
          9.6
        ]
      }
    },
    {
      "id": "capsule-tab-2mm",
      "family": "capsule_tab_ledge",
      "role": "tab",
      "files": {
        "step": "capsule-tab-2mm.step",
        "stl": "capsule-tab-2mm.stl"
      },
      "print_orientation": "Constant section end on bed; 12 mm original X becomes print Z.",
      "dimensions_mm": [
        10.399999618530273,
        10.0,
        12.0
      ],
      "bounds_mm": [
        [
          0.0,
          11.0,
          0.0
        ],
        [
          10.399999618530273,
          21.0,
          12.0
        ]
      ],
      "step_volume_mm3": 737.28,
      "stl_volume_mm3": 737.2799464416503,
      "step_valid": true,
      "step_solids": 1,
      "stl_watertight": true,
      "stl_components": 1,
      "stl_positive_volume": true,
      "bed_contact_area_mm2": 61.439999999999976,
      "probes": [
        {
          "name": "tab material",
          "point_mm": [
            1,
            18,
            6
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "stem material",
          "point_mm": [
            4,
            13.4,
            6
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "captured gap void",
          "point_mm": [
            4,
            18,
            6
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "lid material",
          "point_mm": [
            8,
            16,
            6
          ],
          "material": true,
          "passed": true
        }
      ],
      "sha256": {
        "capsule-tab-2mm.step": "9fecd426d3a9b292808b5c01dfb10899f45585d0ef481765bc42a49e4ccdb0fb",
        "capsule-tab-2mm.stl": "59bf634f2bd6760fd804198cb036ffd3b23ca24d1d6e845a4c02757d320ef7d9"
      },
      "tab_dimensions_mm": [
        12,
        6,
        2
      ],
      "ledge_thickness_mm": 2.4,
      "underside_running_gap_mm": 0.4,
      "stem_side_gap_mm": 0.6,
      "print_to_test": {
        "rotation_y_deg": -90,
        "translation_mm": [
          6,
          0,
          2.6
        ]
      }
    },
    {
      "id": "capsule-ledge-04",
      "family": "capsule_tab_ledge",
      "role": "ledge",
      "files": {
        "step": "capsule-ledge-04.step",
        "stl": "capsule-ledge-04.stl"
      },
      "print_orientation": "Inverted: broad ledge face on bed. Turn over to test.",
      "dimensions_mm": [
        32.0,
        11.0,
        7.400000095367432
      ],
      "bounds_mm": [
        [
          -16.0,
          -26.0,
          0.0
        ],
        [
          16.0,
          -15.0,
          7.400000095367432
        ]
      ],
      "step_volume_mm3": 1484.8000000000004,
      "stl_volume_mm3": 1484.800033569336,
      "step_valid": true,
      "step_solids": 1,
      "stl_watertight": true,
      "stl_components": 1,
      "stl_positive_volume": true,
      "bed_contact_area_mm2": 352.0,
      "probes": [
        {
          "name": "ledge material",
          "point_mm": [
            0,
            -18,
            1
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "underledge void",
          "point_mm": [
            0,
            -18,
            4
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "backwall material",
          "point_mm": [
            0,
            -24,
            5
          ],
          "material": true,
          "passed": true
        }
      ],
      "sha256": {
        "capsule-ledge-04.step": "caeda2d1d032fddb59ab6613a7c57d99ae274fd7ba6fe1b844eff81b1e599dde",
        "capsule-ledge-04.stl": "ae50586631e5e5226024f7710b62f0172c1a651bfbdd8d3129c0d12e0c27ce7a"
      },
      "tab_dimensions_mm": [
        12,
        6,
        2
      ],
      "ledge_thickness_mm": 2.4,
      "underside_running_gap_mm": 0.4,
      "stem_side_gap_mm": 0.6,
      "print_to_test": {
        "rotation_x_deg": 180,
        "translation_mm": [
          0,
          0,
          7.4
        ]
      }
    },
    {
      "id": "swivel-sleeve-8mm",
      "family": "swivel_pivot",
      "role": "sleeve",
      "files": {
        "step": "swivel-sleeve-8mm.step",
        "stl": "swivel-sleeve-8mm.stl"
      },
      "print_orientation": "Axis vertical Z; flat annular foot on bed. Do not lay cylinder sideways.",
      "dimensions_mm": [
        20.0,
        19.993799209594727,
        18.5
      ],
      "bounds_mm": [
        [
          -10.0,
          -9.996899604797363,
          0.0
        ],
        [
          10.0,
          9.996899604797363,
          18.5
        ]
      ],
      "step_volume_mm3": 1553.627522943053,
      "stl_volume_mm3": 1552.9840333173033,
      "step_valid": true,
      "step_solids": 1,
      "stl_watertight": true,
      "stl_components": 1,
      "stl_positive_volume": true,
      "bed_contact_area_mm2": 305.08006259010483,
      "probes": [
        {
          "name": "M3 bore void",
          "point_mm": [
            0,
            0,
            10
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "sleeve wall material",
          "point_mm": [
            3,
            0,
            10
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "outside sleeve void",
          "point_mm": [
            4.2,
            0,
            10
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "foot material",
          "point_mm": [
            8,
            0,
            1
          ],
          "material": true,
          "passed": true
        }
      ],
      "sha256": {
        "swivel-sleeve-8mm.step": "760c65ab6cb05f36c2d3c1d2a4947b9c6d452bed3fe1c355ce1742dc6ffba145",
        "swivel-sleeve-8mm.stl": "fcb9f2d7b67e541848907427908fb60750b7e15e165779843c15965cb5ff1708"
      },
      "sleeve_od_mm": 8,
      "sleeve_id_mm": 3.4,
      "leaf_bore_diameter_mm": 8.8,
      "radial_clearance_mm": 0.4,
      "diametral_clearance_mm": 0.8,
      "print_to_test": {
        "rotation_x_deg": 0,
        "translation_mm": [
          0,
          0,
          0
        ]
      }
    },
    {
      "id": "swivel-bore-88mm",
      "family": "swivel_pivot",
      "role": "bore",
      "files": {
        "step": "swivel-bore-88mm.step",
        "stl": "swivel-bore-88mm.stl"
      },
      "print_orientation": "Axis vertical Z; flat annular foot on bed. Do not lay cylinder sideways.",
      "dimensions_mm": [
        20.0,
        19.993799209594727,
        14.699999809265137
      ],
      "bounds_mm": [
        [
          -10.0,
          -9.996899604797363,
          0.0
        ],
        [
          10.0,
          9.996899604797363,
          14.699999809265137
        ]
      ],
      "step_volume_mm3": 3724.0690643066514,
      "stl_volume_mm3": 3722.528062387577,
      "step_valid": true,
      "step_solids": 1,
      "stl_watertight": true,
      "stl_components": 1,
      "stl_positive_volume": true,
      "bed_contact_area_mm2": 253.33803158548096,
      "probes": [
        {
          "name": "8.8 bore void",
          "point_mm": [
            4.2,
            0,
            6
          ],
          "material": false,
          "passed": true
        },
        {
          "name": "bore wall material",
          "point_mm": [
            5,
            0,
            6
          ],
          "material": true,
          "passed": true
        },
        {
          "name": "bore center void",
          "point_mm": [
            0,
            0,
            6
          ],
          "material": false,
          "passed": true
        }
      ],
      "sha256": {
        "swivel-bore-88mm.step": "62a420dba3c1aaf078feeeff910a71bea73baf3530504f2571f53648ab75fb3b",
        "swivel-bore-88mm.stl": "b58ea95ec69dc9e02373be554223050444f89be86bf2bacfea51654215e392db"
      },
      "sleeve_od_mm": 8,
      "sleeve_id_mm": 3.4,
      "leaf_bore_diameter_mm": 8.8,
      "radial_clearance_mm": 0.4,
      "diametral_clearance_mm": 0.8,
      "print_to_test": {
        "rotation_x_deg": 0,
        "translation_mm": [
          0,
          0,
          3.4
        ]
      }
    },
    {
      "id": "cassette-runner",
      "family": "cassette_runner",
      "role": "male",
      "files": {
        "step": "cassette-runner.step",
        "stl": "cassette-runner.stl"
      },
      "print_orientation": "As exported, Z=0. Groove roof / rail overhang need slicer support review.",
      "print_to_test": {
        "translation_mm": [
          0.0,
          0.0,
          3.4
        ]
      },
      "dimensions_mm": [
        15.599999999999994,
        24.0,
        22.0
      ],
      "bounds_mm": [
        [
          90.4,
          -12.0,
          0.0
        ],
        [
          106.0,
          12.0,
          22.0
        ]
      ],
      "step_valid": true,
      "step_solids": 1,
      "stl_watertight": true,
      "stl_components": 1,
      "stl_positive_volume": true,
      "bed_contact_area_mm2": 144.0,
      "sha256": {
        "cassette-runner.stl": "5c9878d59781a1af6b058c44a2f4e2b86495f45f667d57505c8dddf89da2c255",
        "cassette-runner.step": "5ed01e5e7e984059fdd18fde18700f87e6c79e9f6e765a0bcee1e2243453a50e"
      }
    },
    {
      "id": "cassette-groove",
      "family": "cassette_runner",
      "role": "female",
      "files": {
        "step": "cassette-groove.step",
        "stl": "cassette-groove.stl"
      },
      "print_orientation": "As exported, Z=0. Groove roof / rail overhang need slicer support review.",
      "print_to_test": {
        "translation_mm": [
          0.0,
          0.0,
          7.599999899999999
        ]
      },
      "dimensions_mm": [
        11.0,
        24.0,
        24.0
      ],
      "bounds_mm": [
        [
          86.0,
          -12.0,
          0.0
        ],
        [
          97.0,
          12.0,
          24.0
        ]
      ],
      "step_valid": true,
      "step_solids": 1,
      "stl_watertight": true,
      "stl_components": 1,
      "stl_positive_volume": true,
      "bed_contact_area_mm2": 191.99999999999997,
      "sha256": {
        "cassette-groove.stl": "62fa887a33cf03be525c2b25d41caf46486f12b6fcb49044ce292a0d8307cfeb",
        "cassette-groove.step": "da6f021d89d2b0bf69460a9fb9bfa97d61dc81da9fc5f73e9f35e96b7cf401a5"
      }
    }
  ],
  "interface_checks": [
    {
      "family": "pod_dovetail",
      "pair_key": 1,
      "sliding_intersections": [
        {
          "x_mm": -55,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": -35,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": -20,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 0,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 20,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 35,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 55,
          "overlap_mm3": 0.0
        }
      ],
      "minimum_distance_mm": 0.21213203435596412,
      "lift_2mm_intersection_mm3": 57.120000000000125,
      "lateral_overclearance_intersection_mm3": 10.919999999999982,
      "passed": true
    },
    {
      "family": "pod_dovetail",
      "pair_key": 2,
      "sliding_intersections": [
        {
          "x_mm": -55,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": -35,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": -20,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 0,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 20,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 35,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 55,
          "overlap_mm3": 0.0
        }
      ],
      "minimum_distance_mm": 0.2828427124746193,
      "lift_2mm_intersection_mm3": 53.760000000000105,
      "lateral_overclearance_intersection_mm3": 10.91999999999993,
      "passed": true
    },
    {
      "family": "pod_dovetail",
      "pair_key": 3,
      "sliding_intersections": [
        {
          "x_mm": -55,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": -35,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": -20,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 0,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 20,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 35,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 55,
          "overlap_mm3": 0.0
        }
      ],
      "minimum_distance_mm": 0.3535533905932738,
      "lift_2mm_intersection_mm3": 50.400000000000105,
      "lateral_overclearance_intersection_mm3": 10.919999999999968,
      "passed": true
    },
    {
      "family": "capsule_tab_ledge",
      "sliding_intersections": [
        {
          "x_mm": -32,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": -16,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 0,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 16,
          "overlap_mm3": 0.0
        },
        {
          "x_mm": 32,
          "overlap_mm3": 0.0
        }
      ],
      "running_distance_mm": 0.399999999999995,
      "lift_1mm_intersection_mm3": 36.00000000000029,
      "passed": true
    },
    {
      "family": "swivel_pivot",
      "insertion_intersections": [
        {
          "z_mm": 0,
          "overlap_mm3": 0.0
        },
        {
          "z_mm": 4,
          "overlap_mm3": 0.0
        },
        {
          "z_mm": 10,
          "overlap_mm3": 0.0
        },
        {
          "z_mm": 18,
          "overlap_mm3": 0.0
        }
      ],
      "minimum_distance_mm": 0.39999999999999986,
      "eccentric_06mm_intersection_mm3": 13.653757602202248,
      "passed": true
    },
    {
      "family": "cassette_runner",
      "passed": true,
      "source_step_sha256": {
        "cassette-cradle": "cd4701ef2abbfb2ba7b53815c6aa50249fb3e1f9a0a158abe7abebb5d465d47a",
        "cassette-drawer": "a85cd7aaaa671b86a11e162bc36bb59887ed78236caba43049e3409d95ffdb1e"
      },
      "minimum_distance_mm": 0.39999990000000096,
      "lift_1mm_intersection_mm3": 37.344006212009724,
      "slide_samples_mm": [
        -20,
        -10,
        0,
        10,
        20
      ]
    }
  ],
  "limitations": [
    "Identification keys are numerals and counted dimples, not incompatible mating profiles.",
    "Pod clearances are Y-coordinate offsets; normal flank gap is c/sqrt(2), not c.",
    "Swivel 0.4 mm RADIAL means 0.8 mm DIAMETRAL clearance.",
    "Capsule is one straight ledge/tab segment, not full release-window mechanism.",
    "Local short-slot/rail coupons do not prove assembly stops, retention, heat resistance, wear or strength.",
    "No physical printing, slicing or vehicle fit validation has been performed."
  ]
}