{
  "schemaVersion": 1,
  "methodVersion": "1.0",
  "contentVersion": "2026-09-07.2",
  "summary": {
    "status": "passed",
    "models": 12,
    "passed": 12,
    "warning": 0,
    "blocked": 0
  },
  "assumptions": {
    "paperGsm": 160,
    "paperThickness": "zero-thickness digital sheet",
    "massModel": "uniform paper surface area; glue and ink mass omitted",
    "supportToleranceMm": 1.5,
    "flightModel": "flat-plate, still-air estimate; physical flight test remains required",
    "strictGate": "fails when any model status is blocked"
  },
  "models": [
    {
      "slug": "rocket",
      "family": "transport",
      "intent": "standing",
      "status": "passed",
      "checks": [
        {
          "name": "fold-and-close",
          "status": "passed",
          "message": "All solid parts are closed, edge-faithful nets.",
          "metrics": {
            "meshParts": [
              {
                "name": "火箭主体",
                "vertices": 10,
                "edges": 15,
                "faces": 7,
                "eulerCharacteristic": 2,
                "netFaceOverlap": false,
                "tabs": 9,
                "expectedSeams": 9,
                "tabFaceOverlaps": 0,
                "tabTabOverlaps": 0,
                "maxEdgeErrorMm": 0.0
              }
            ],
            "edgeErrorToleranceMm": 1e-06
          }
        },
        {
          "name": "usable-glue-tabs",
          "status": "passed",
          "message": "Glue tabs do not overlap other printable geometry.",
          "metrics": {
            "tabFaceOverlaps": 0,
            "tabTabOverlaps": 0
          }
        },
        {
          "name": "explicit-part-attachments",
          "status": "passed",
          "message": "Every flat part declares an attachment constraint.",
          "metrics": {
            "flatParts": 2,
            "withAttachmentConstraint": 2,
            "constraints": [
              {
                "part": "双侧尾翼",
                "kind": "glue",
                "targetPart": "火箭主体",
                "location": "背面底部中心；尾翼下缘与主体底面齐平",
                "angleDeg": 0,
                "targetAnchor": [
                  0,
                  -15,
                  31
                ],
                "alignment": "中心线重合；下缘与主体底面齐平"
              },
              {
                "part": "舷窗与火焰",
                "kind": "glue",
                "targetPart": "火箭主体",
                "location": "正面中心线；火焰尖端朝下",
                "angleDeg": 0,
                "targetAnchor": [
                  0,
                  -16,
                  43
                ],
                "alignment": "竖直中心线重合；舷窗朝上、火焰朝下"
              }
            ]
          }
        },
        {
          "name": "diagram-attachment-targets",
          "status": "passed",
          "message": "Every rocket insert has a machine-readable target anchor and alignment rule.",
          "metrics": {
            "flatParts": 2,
            "withDiagramTarget": 2
          }
        },
        {
          "name": "upright-support",
          "status": "passed",
          "message": "The area-weighted paper center of mass stays inside a stable support polygon.",
          "metrics": {
            "paperAreaMm2": 8298.5,
            "centerOfMassMm": [
              0.0,
              -1.6,
              38.27
            ],
            "floorMm": 11.62,
            "supportPoints": 7,
            "supportClass": "stable",
            "stabilityMarginMm": 11.67
          }
        },
        {
          "name": "model-specific-instructions",
          "status": "passed",
          "message": "PDF contains model-specific steps and geometry-backed exploded assembly diagrams."
        },
        {
          "name": "play-function",
          "status": "not-applicable",
          "message": "No dynamic play claim is validated for this model."
        }
      ]
    },
    {
      "slug": "school-bus",
      "family": "transport",
      "intent": "standing",
      "status": "passed",
      "checks": [
        {
          "name": "fold-and-close",
          "status": "passed",
          "message": "All solid parts are closed, edge-faithful nets.",
          "metrics": {
            "meshParts": [
              {
                "name": "校车车身",
                "vertices": 8,
                "edges": 12,
                "faces": 6,
                "eulerCharacteristic": 2,
                "netFaceOverlap": false,
                "tabs": 7,
                "expectedSeams": 7,
                "tabFaceOverlaps": 0,
                "tabTabOverlaps": 0,
                "maxEdgeErrorMm": 0.0
              }
            ],
            "edgeErrorToleranceMm": 1e-06
          }
        },
        {
          "name": "usable-glue-tabs",
          "status": "passed",
          "message": "Glue tabs do not overlap other printable geometry.",
          "metrics": {
            "tabFaceOverlaps": 0,
            "tabTabOverlaps": 0
          }
        },
        {
          "name": "explicit-part-attachments",
          "status": "passed",
          "message": "Every flat part declares an attachment constraint.",
          "metrics": {
            "flatParts": 2,
            "withAttachmentConstraint": 2,
            "constraints": [
              {
                "part": "车窗长条",
                "kind": "glue",
                "targetPart": "校车车身",
                "location": "侧面上半部；斜边朝向车头",
                "angleDeg": 0
              },
              {
                "part": "双轮底架",
                "kind": "glue",
                "targetPart": "校车车身",
                "location": "侧面下缘；两只轮子下缘与车身底面齐平",
                "angleDeg": 0
              }
            ]
          }
        },
        {
          "name": "upright-support",
          "status": "passed",
          "message": "The area-weighted paper center of mass stays inside a stable support polygon.",
          "metrics": {
            "paperAreaMm2": 12594.7,
            "centerOfMassMm": [
              -0.57,
              -1.83,
              30.29
            ],
            "floorMm": 11.5,
            "supportPoints": 8,
            "supportClass": "stable",
            "stabilityMarginMm": 14.17
          }
        },
        {
          "name": "model-specific-instructions",
          "status": "passed",
          "message": "PDF contains model-specific steps and geometry-backed exploded assembly diagrams."
        },
        {
          "name": "play-function",
          "status": "not-applicable",
          "message": "No dynamic play claim is validated for this model."
        }
      ]
    },
    {
      "slug": "race-car",
      "family": "transport",
      "intent": "standing",
      "status": "passed",
      "checks": [
        {
          "name": "fold-and-close",
          "status": "passed",
          "message": "All solid parts are closed, edge-faithful nets.",
          "metrics": {
            "meshParts": [
              {
                "name": "赛车车身",
                "vertices": 8,
                "edges": 12,
                "faces": 6,
                "eulerCharacteristic": 2,
                "netFaceOverlap": false,
                "tabs": 7,
                "expectedSeams": 7,
                "tabFaceOverlaps": 0,
                "tabTabOverlaps": 0,
                "maxEdgeErrorMm": 0.0
              }
            ],
            "edgeErrorToleranceMm": 1e-06
          }
        },
        {
          "name": "usable-glue-tabs",
          "status": "passed",
          "message": "Glue tabs do not overlap other printable geometry.",
          "metrics": {
            "tabFaceOverlaps": 0,
            "tabTabOverlaps": 0
          }
        },
        {
          "name": "explicit-part-attachments",
          "status": "passed",
          "message": "Every flat part declares an attachment constraint.",
          "metrics": {
            "flatParts": 2,
            "withAttachmentConstraint": 2,
            "constraints": [
              {
                "part": "驾驶舱与号码",
                "kind": "glue",
                "targetPart": "赛车车身",
                "location": "侧面中段；短边朝向车头",
                "angleDeg": 0
              },
              {
                "part": "双轮与尾翼",
                "kind": "glue",
                "targetPart": "赛车车身",
                "location": "侧面下缘；轮子下缘与车身底面齐平",
                "angleDeg": 0
              }
            ]
          }
        },
        {
          "name": "upright-support",
          "status": "passed",
          "message": "The area-weighted paper center of mass stays inside a stable support polygon.",
          "metrics": {
            "paperAreaMm2": 10055.3,
            "centerOfMassMm": [
              -0.71,
              -1.68,
              27.59
            ],
            "floorMm": 14.5,
            "supportPoints": 8,
            "supportClass": "stable",
            "stabilityMarginMm": 12.32
          }
        },
        {
          "name": "model-specific-instructions",
          "status": "passed",
          "message": "PDF contains model-specific steps and geometry-backed exploded assembly diagrams."
        },
        {
          "name": "play-function",
          "status": "not-applicable",
          "message": "No dynamic play claim is validated for this model."
        }
      ]
    },
    {
      "slug": "t-rex",
      "family": "dinosaurs",
      "intent": "standing",
      "status": "passed",
      "checks": [
        {
          "name": "fold-and-close",
          "status": "passed",
          "message": "All solid parts are closed, edge-faithful nets.",
          "metrics": {
            "meshParts": [
              {
                "name": "头身长尾",
                "vertices": 8,
                "edges": 12,
                "faces": 6,
                "eulerCharacteristic": 2,
                "netFaceOverlap": false,
                "tabs": 7,
                "expectedSeams": 7,
                "tabFaceOverlaps": 0,
                "tabTabOverlaps": 0,
                "maxEdgeErrorMm": 0.0
              }
            ],
            "edgeErrorToleranceMm": 1e-06
          }
        },
        {
          "name": "usable-glue-tabs",
          "status": "passed",
          "message": "Glue tabs do not overlap other printable geometry.",
          "metrics": {
            "tabFaceOverlaps": 0,
            "tabTabOverlaps": 0
          }
        },
        {
          "name": "explicit-part-attachments",
          "status": "passed",
          "message": "Every flat part declares an attachment constraint.",
          "metrics": {
            "flatParts": 2,
            "withAttachmentConstraint": 2,
            "constraints": [
              {
                "part": "强壮双腿",
                "kind": "glue",
                "targetPart": "头身长尾",
                "location": "侧面下半部；两脚下缘与身体底面齐平",
                "angleDeg": 0
              },
              {
                "part": "短臂与腹纹",
                "kind": "glue",
                "targetPart": "头身长尾",
                "location": "头部后方侧面；短臂朝向头部",
                "angleDeg": 0
              }
            ]
          }
        },
        {
          "name": "upright-support",
          "status": "passed",
          "message": "The area-weighted paper center of mass stays inside a stable support polygon.",
          "metrics": {
            "paperAreaMm2": 10004.1,
            "centerOfMassMm": [
              -0.66,
              -0.28,
              27.71
            ],
            "floorMm": 10.54,
            "supportPoints": 6,
            "supportClass": "stable",
            "stabilityMarginMm": 9.96
          }
        },
        {
          "name": "model-specific-instructions",
          "status": "passed",
          "message": "PDF contains model-specific steps and geometry-backed exploded assembly diagrams."
        },
        {
          "name": "play-function",
          "status": "not-applicable",
          "message": "No dynamic play claim is validated for this model."
        }
      ]
    },
    {
      "slug": "triceratops",
      "family": "dinosaurs",
      "intent": "standing",
      "status": "passed",
      "checks": [
        {
          "name": "fold-and-close",
          "status": "passed",
          "message": "All solid parts are closed, edge-faithful nets.",
          "metrics": {
            "meshParts": [
              {
                "name": "头身与短尾",
                "vertices": 8,
                "edges": 12,
                "faces": 6,
                "eulerCharacteristic": 2,
                "netFaceOverlap": false,
                "tabs": 7,
                "expectedSeams": 7,
                "tabFaceOverlaps": 0,
                "tabTabOverlaps": 0,
                "maxEdgeErrorMm": 0.0
              }
            ],
            "edgeErrorToleranceMm": 1e-06
          }
        },
        {
          "name": "usable-glue-tabs",
          "status": "passed",
          "message": "Glue tabs do not overlap other printable geometry.",
          "metrics": {
            "tabFaceOverlaps": 0,
            "tabTabOverlaps": 0
          }
        },
        {
          "name": "explicit-part-attachments",
          "status": "passed",
          "message": "Every flat part declares an attachment constraint.",
          "metrics": {
            "flatParts": 2,
            "withAttachmentConstraint": 2,
            "constraints": [
              {
                "part": "头盾与三角",
                "kind": "glue",
                "targetPart": "头身与短尾",
                "location": "头部侧面；三根角全部朝向前方",
                "angleDeg": 0
              },
              {
                "part": "四腿底架",
                "kind": "glue",
                "targetPart": "头身与短尾",
                "location": "侧面下缘；四脚下缘与身体底面齐平",
                "angleDeg": 0
              }
            ]
          }
        },
        {
          "name": "upright-support",
          "status": "passed",
          "message": "The area-weighted paper center of mass stays inside a stable support polygon.",
          "metrics": {
            "paperAreaMm2": 11438.7,
            "centerOfMassMm": [
              -1.94,
              -1.17,
              29.19
            ],
            "floorMm": 12.58,
            "supportPoints": 10,
            "supportClass": "stable",
            "stabilityMarginMm": 10.92
          }
        },
        {
          "name": "model-specific-instructions",
          "status": "passed",
          "message": "PDF contains model-specific steps and geometry-backed exploded assembly diagrams."
        },
        {
          "name": "play-function",
          "status": "not-applicable",
          "message": "No dynamic play claim is validated for this model."
        }
      ]
    },
    {
      "slug": "pterosaur",
      "family": "dinosaurs",
      "intent": "hanging",
      "status": "passed",
      "checks": [
        {
          "name": "fold-and-close",
          "status": "passed",
          "message": "All solid parts are closed, edge-faithful nets.",
          "metrics": {
            "meshParts": [
              {
                "name": "身体",
                "vertices": 8,
                "edges": 12,
                "faces": 6,
                "eulerCharacteristic": 2,
                "netFaceOverlap": false,
                "tabs": 7,
                "expectedSeams": 7,
                "tabFaceOverlaps": 0,
                "tabTabOverlaps": 0,
                "maxEdgeErrorMm": 0.0
              }
            ],
            "edgeErrorToleranceMm": 1e-06
          }
        },
        {
          "name": "usable-glue-tabs",
          "status": "passed",
          "message": "Glue tabs do not overlap other printable geometry.",
          "metrics": {
            "tabFaceOverlaps": 0,
            "tabTabOverlaps": 0
          }
        },
        {
          "name": "explicit-part-attachments",
          "status": "passed",
          "message": "Every flat part declares an attachment constraint.",
          "metrics": {
            "flatParts": 2,
            "withAttachmentConstraint": 2,
            "constraints": [
              {
                "part": "整片双翼",
                "kind": "glue",
                "targetPart": "身体",
                "location": "身体顶面中心线；左右翼尖等高",
                "angleDeg": 0
              },
              {
                "part": "长喙与头冠",
                "kind": "glue",
                "targetPart": "身体",
                "location": "身体前端侧面；长喙朝前、头冠朝后",
                "angleDeg": 0
              }
            ]
          }
        },
        {
          "name": "upright-support",
          "status": "not-applicable",
          "message": "Support is not a release gate for the hanging intent.",
          "metrics": {
            "paperAreaMm2": 7562.4,
            "centerOfMassMm": [
              -1.36,
              -3.16,
              29.79
            ],
            "floorMm": 17.84,
            "supportPoints": 4,
            "supportClass": "stable",
            "stabilityMarginMm": 6.8
          }
        },
        {
          "name": "model-specific-instructions",
          "status": "passed",
          "message": "PDF contains model-specific steps and geometry-backed exploded assembly diagrams."
        },
        {
          "name": "play-function",
          "status": "not-applicable",
          "message": "No dynamic play claim is validated for this model."
        }
      ]
    },
    {
      "slug": "moon-rabbit-lantern",
      "family": "festivals",
      "intent": "standing",
      "status": "passed",
      "checks": [
        {
          "name": "fold-and-close",
          "status": "passed",
          "message": "All solid parts are closed, edge-faithful nets.",
          "metrics": {
            "meshParts": [
              {
                "name": "六面灯身",
                "vertices": 12,
                "edges": 18,
                "faces": 8,
                "eulerCharacteristic": 2,
                "netFaceOverlap": false,
                "tabs": 11,
                "expectedSeams": 11,
                "tabFaceOverlaps": 0,
                "tabTabOverlaps": 0,
                "maxEdgeErrorMm": 0.0
              }
            ],
            "edgeErrorToleranceMm": 1e-06
          }
        },
        {
          "name": "usable-glue-tabs",
          "status": "passed",
          "message": "Glue tabs do not overlap other printable geometry.",
          "metrics": {
            "tabFaceOverlaps": 0,
            "tabTabOverlaps": 0
          }
        },
        {
          "name": "explicit-part-attachments",
          "status": "passed",
          "message": "Every flat part declares an attachment constraint.",
          "metrics": {
            "flatParts": 2,
            "withAttachmentConstraint": 2,
            "constraints": [
              {
                "part": "兔耳与月牙",
                "kind": "glue",
                "targetPart": "六面灯身",
                "location": "正面上沿；兔耳竖直、月牙朝外",
                "angleDeg": 0
              },
              {
                "part": "提手与流苏",
                "kind": "glue",
                "targetPart": "六面灯身",
                "location": "提手两端贴顶边；流苏贴正面中心",
                "angleDeg": 0
              }
            ]
          }
        },
        {
          "name": "upright-support",
          "status": "passed",
          "message": "The area-weighted paper center of mass stays inside a stable support polygon.",
          "metrics": {
            "paperAreaMm2": 9408.8,
            "centerOfMassMm": [
              -0.33,
              -0.82,
              35.61
            ],
            "floorMm": 8.58,
            "supportPoints": 7,
            "supportClass": "stable",
            "stabilityMarginMm": 18.03
          }
        },
        {
          "name": "model-specific-instructions",
          "status": "passed",
          "message": "PDF contains model-specific steps and geometry-backed exploded assembly diagrams."
        },
        {
          "name": "play-function",
          "status": "not-applicable",
          "message": "No dynamic play claim is validated for this model."
        }
      ]
    },
    {
      "slug": "lion-dance",
      "family": "festivals",
      "intent": "standing",
      "status": "passed",
      "checks": [
        {
          "name": "fold-and-close",
          "status": "passed",
          "message": "All solid parts are closed, edge-faithful nets.",
          "metrics": {
            "meshParts": [
              {
                "name": "狮头与狮身",
                "vertices": 8,
                "edges": 12,
                "faces": 6,
                "eulerCharacteristic": 2,
                "netFaceOverlap": false,
                "tabs": 7,
                "expectedSeams": 7,
                "tabFaceOverlaps": 0,
                "tabTabOverlaps": 0,
                "maxEdgeErrorMm": 0.0
              }
            ],
            "edgeErrorToleranceMm": 1e-06
          }
        },
        {
          "name": "usable-glue-tabs",
          "status": "passed",
          "message": "Glue tabs do not overlap other printable geometry.",
          "metrics": {
            "tabFaceOverlaps": 0,
            "tabTabOverlaps": 0
          }
        },
        {
          "name": "explicit-part-attachments",
          "status": "passed",
          "message": "Every flat part declares an attachment constraint.",
          "metrics": {
            "flatParts": 2,
            "withAttachmentConstraint": 2,
            "constraints": [
              {
                "part": "狮面花纹",
                "kind": "glue",
                "targetPart": "狮头与狮身",
                "location": "前端侧面；双眼保持水平",
                "angleDeg": 0
              },
              {
                "part": "四足与彩尾",
                "kind": "glue",
                "targetPart": "狮头与狮身",
                "location": "侧面下缘；四足下缘与身体底面齐平",
                "angleDeg": 0
              }
            ]
          }
        },
        {
          "name": "upright-support",
          "status": "passed",
          "message": "The area-weighted paper center of mass stays inside a stable support polygon.",
          "metrics": {
            "paperAreaMm2": 15338.7,
            "centerOfMassMm": [
              -0.83,
              -0.99,
              32.37
            ],
            "floorMm": 12.24,
            "supportPoints": 10,
            "supportClass": "stable",
            "stabilityMarginMm": 11.61
          }
        },
        {
          "name": "model-specific-instructions",
          "status": "passed",
          "message": "PDF contains model-specific steps and geometry-backed exploded assembly diagrams."
        },
        {
          "name": "play-function",
          "status": "not-applicable",
          "message": "No dynamic play claim is validated for this model."
        }
      ]
    },
    {
      "slug": "dragon-boat",
      "family": "festivals",
      "intent": "standing",
      "status": "passed",
      "checks": [
        {
          "name": "fold-and-close",
          "status": "passed",
          "message": "All solid parts are closed, edge-faithful nets.",
          "metrics": {
            "meshParts": [
              {
                "name": "舟身",
                "vertices": 8,
                "edges": 12,
                "faces": 6,
                "eulerCharacteristic": 2,
                "netFaceOverlap": false,
                "tabs": 7,
                "expectedSeams": 7,
                "tabFaceOverlaps": 0,
                "tabTabOverlaps": 0,
                "maxEdgeErrorMm": 0.0
              }
            ],
            "edgeErrorToleranceMm": 1e-06
          }
        },
        {
          "name": "usable-glue-tabs",
          "status": "passed",
          "message": "Glue tabs do not overlap other printable geometry.",
          "metrics": {
            "tabFaceOverlaps": 0,
            "tabTabOverlaps": 0
          }
        },
        {
          "name": "explicit-part-attachments",
          "status": "passed",
          "message": "Every flat part declares an attachment constraint.",
          "metrics": {
            "flatParts": 2,
            "withAttachmentConstraint": 2,
            "constraints": [
              {
                "part": "龙头与龙尾",
                "kind": "glue",
                "targetPart": "舟身",
                "location": "侧面上缘；龙头朝左、龙尾朝右",
                "angleDeg": 0
              },
              {
                "part": "六桨一体架",
                "kind": "glue",
                "targetPart": "舟身",
                "location": "侧面上缘；横条贴舟身、桨叶朝下",
                "angleDeg": 0
              }
            ]
          }
        },
        {
          "name": "upright-support",
          "status": "passed",
          "message": "The area-weighted paper center of mass stays inside a stable support polygon.",
          "metrics": {
            "paperAreaMm2": 11648.0,
            "centerOfMassMm": [
              -1.1,
              -3.79,
              28.54
            ],
            "floorMm": 15.0,
            "supportPoints": 7,
            "supportClass": "stable",
            "stabilityMarginMm": 10.21
          }
        },
        {
          "name": "model-specific-instructions",
          "status": "passed",
          "message": "PDF contains model-specific steps and geometry-backed exploded assembly diagrams."
        },
        {
          "name": "play-function",
          "status": "not-applicable",
          "message": "No dynamic play claim is validated for this model."
        }
      ]
    },
    {
      "slug": "paper-windmill",
      "family": "play",
      "intent": "rotation",
      "status": "passed",
      "checks": [
        {
          "name": "fold-and-close",
          "status": "passed",
          "message": "All solid parts are closed, edge-faithful nets.",
          "metrics": {
            "meshParts": [],
            "edgeErrorToleranceMm": 1e-06
          }
        },
        {
          "name": "usable-glue-tabs",
          "status": "passed",
          "message": "Glue tabs do not overlap other printable geometry.",
          "metrics": {
            "tabFaceOverlaps": 0,
            "tabTabOverlaps": 0
          }
        },
        {
          "name": "explicit-part-attachments",
          "status": "passed",
          "message": "Every flat part declares an attachment constraint.",
          "metrics": {
            "flatParts": 3,
            "withAttachmentConstraint": 3,
            "constraints": [
              {
                "part": "四叶风轮",
                "kind": "pivot",
                "targetPart": "折叠握柄",
                "location": "中心孔与握柄顶端孔同轴；扣片只限位不粘死",
                "angleDeg": null
              },
              {
                "part": "折叠握柄",
                "kind": "pivot",
                "targetPart": "四叶风轮",
                "location": "顶端孔与风轮中心孔同轴",
                "angleDeg": 90
              },
              {
                "part": "中心垫片",
                "kind": "pivot-retainer",
                "targetPart": "四叶风轮",
                "location": "覆盖中心轴；与风轮保留转动间隙",
                "angleDeg": null
              }
            ]
          }
        },
        {
          "name": "upright-support",
          "status": "not-applicable",
          "message": "Support is not a release gate for the rotation intent.",
          "metrics": {
            "paperAreaMm2": 7850.0,
            "centerOfMassMm": [
              0.0,
              -1.24,
              45.52
            ],
            "floorMm": -36.0,
            "supportPoints": 2,
            "supportClass": "edge-supported",
            "stabilityMarginMm": 0.0
          }
        },
        {
          "name": "model-specific-instructions",
          "status": "passed",
          "message": "PDF contains model-specific steps and geometry-backed exploded assembly diagrams."
        },
        {
          "name": "rotation-function",
          "status": "passed",
          "message": "Rotor balance, four-fold symmetry, and the pivot joint are defined.",
          "metrics": {
            "rotorAreaMm2": 6084.0,
            "rotorCentroidOffsetMm": 0.0,
            "quarterTurnAsymmetryMm": 0.0,
            "missingJointFields": []
          }
        }
      ]
    },
    {
      "slug": "gliding-bird",
      "family": "play",
      "intent": "flight",
      "status": "passed",
      "checks": [
        {
          "name": "fold-and-close",
          "status": "passed",
          "message": "All solid parts are closed, edge-faithful nets.",
          "metrics": {
            "meshParts": [],
            "edgeErrorToleranceMm": 1e-06
          }
        },
        {
          "name": "usable-glue-tabs",
          "status": "passed",
          "message": "Glue tabs do not overlap other printable geometry.",
          "metrics": {
            "tabFaceOverlaps": 0,
            "tabTabOverlaps": 0
          }
        },
        {
          "name": "explicit-part-attachments",
          "status": "passed",
          "message": "Every flat part declares an attachment constraint.",
          "metrics": {
            "flatParts": 3,
            "withAttachmentConstraint": 3,
            "constraints": [
              {
                "part": "整片双翼",
                "kind": "glue",
                "targetPart": "鸟身与头",
                "location": "机翼中心线贴身体背面；两侧翼展等长",
                "angleDeg": 90
              },
              {
                "part": "鸟身与头",
                "kind": "glue",
                "targetPart": "整片双翼",
                "location": "身体中心线贴翼面中央；鸟喙朝 -x",
                "angleDeg": 90
              },
              {
                "part": "尾翼配重片",
                "kind": "glue",
                "targetPart": "鸟身与头",
                "location": "尾部中心线；尾翼与主翼平行",
                "angleDeg": 0
              }
            ]
          }
        },
        {
          "name": "upright-support",
          "status": "not-applicable",
          "message": "Support is not a release gate for the flight intent.",
          "metrics": {
            "paperAreaMm2": 4256.0,
            "centerOfMassMm": [
              7.58,
              -0.39,
              42.39
            ],
            "floorMm": 37.0,
            "supportPoints": 2,
            "supportClass": "edge-supported",
            "stabilityMarginMm": 0.0
          }
        },
        {
          "name": "model-specific-instructions",
          "status": "passed",
          "message": "PDF contains model-specific steps and geometry-backed exploded assembly diagrams."
        },
        {
          "name": "flight-function",
          "status": "passed",
          "message": "The idealized center of mass is ahead of the neutral point.",
          "metrics": {
            "forwardAxis": "-x",
            "paperGsm": 160,
            "wingAreaMm2": 2869.0,
            "wingAspectRatio": 5.71,
            "neutralPointXmm": 9.24,
            "centerOfMassXmm": 7.58,
            "staticMargin": 0.074,
            "estimatedStallSpeedMps": 1.95,
            "idealizedBestGlideRatio": 5.6
          }
        }
      ]
    },
    {
      "slug": "rolling-monster",
      "family": "play",
      "intent": "rolling",
      "status": "passed",
      "checks": [
        {
          "name": "fold-and-close",
          "status": "passed",
          "message": "All solid parts are closed, edge-faithful nets.",
          "metrics": {
            "meshParts": [
              {
                "name": "六面滚筒身体",
                "vertices": 12,
                "edges": 18,
                "faces": 8,
                "eulerCharacteristic": 2,
                "netFaceOverlap": false,
                "tabs": 11,
                "expectedSeams": 11,
                "tabFaceOverlaps": 0,
                "tabTabOverlaps": 0,
                "maxEdgeErrorMm": 0.0
              }
            ],
            "edgeErrorToleranceMm": 1e-06
          }
        },
        {
          "name": "usable-glue-tabs",
          "status": "passed",
          "message": "Glue tabs do not overlap other printable geometry.",
          "metrics": {
            "tabFaceOverlaps": 0,
            "tabTabOverlaps": 0
          }
        },
        {
          "name": "explicit-part-attachments",
          "status": "passed",
          "message": "Every flat part declares an attachment constraint.",
          "metrics": {
            "flatParts": 2,
            "withAttachmentConstraint": 2,
            "constraints": [
              {
                "part": "双臂与耳朵",
                "kind": "glue",
                "targetPart": "六面滚筒身体",
                "location": "一个侧面中心；双臂沿滚动轴方向伸展",
                "angleDeg": 0
              },
              {
                "part": "表情贴片",
                "kind": "glue",
                "targetPart": "六面滚筒身体",
                "location": "与双臂相邻的正面中心；眼睛水平",
                "angleDeg": 0
              }
            ]
          }
        },
        {
          "name": "upright-support",
          "status": "not-applicable",
          "message": "Support is not a release gate for the rolling intent.",
          "metrics": {
            "paperAreaMm2": 8890.6,
            "centerOfMassMm": [
              -0.0,
              -4.07,
              30.18
            ],
            "floorMm": 7.35,
            "supportPoints": 4,
            "supportClass": "stable",
            "stabilityMarginMm": 8.43
          }
        },
        {
          "name": "model-specific-instructions",
          "status": "passed",
          "message": "PDF contains model-specific steps and geometry-backed exploded assembly diagrams."
        },
        {
          "name": "rolling-function",
          "status": "passed",
          "message": "The estimated rolling barrier is reachable with a light push.",
          "metrics": {
            "stableFaces": 6,
            "energyBarrierMm": [
              0.164,
              5.831
            ],
            "estimatedPushSpeedMps": [
              0.057,
              0.338
            ]
          }
        }
      ]
    }
  ]
}
