{
  "caseId": "case03-zone-transition-web",
  "edit": "Shorten the free end of the third root drop footprint by 12 mm along -X, reassign its exact mirrored 0-degree pair",
  "sourceCompleteSha256": "4fa03532e63ba3c398705024556871d965904484ccab5585877ac343f0d9db18",
  "originalCompleteUnchanged": true,
  "beforeRevision": 69,
  "afterRevision": 72,
  "oldRegionId": "rg-9",
  "newRegionId": "rg-root-3-stagger-revision",
  "affectedPlyIds": [
    "ply-23",
    "ply-26"
  ],
  "plyOrderUnchanged": true,
  "carrierGeometryUnchanged": true,
  "beforeBoundary": {
    "plane": "XY",
    "projectionAxis": "Z",
    "polygon": {
      "kind": "POLYGON_WITH_HOLES",
      "outer": [
        {
          "pointsMm": [
            {
              "x": -650,
              "y": -200
            },
            {
              "x": -419,
              "y": -153
            },
            {
              "x": -434,
              "y": 46
            },
            {
              "x": -650,
              "y": 80
            }
          ]
        }
      ],
      "holes": []
    }
  },
  "afterBoundary": {
    "plane": "XY",
    "projectionAxis": "Z",
    "polygon": {
      "kind": "POLYGON_WITH_HOLES",
      "outer": [
        {
          "pointsMm": [
            {
              "x": -650,
              "y": -200
            },
            {
              "x": -431,
              "y": -153
            },
            {
              "x": -446,
              "y": 46
            },
            {
              "x": -650,
              "y": 80
            }
          ]
        }
      ],
      "holes": []
    }
  },
  "beforeActualClippedAreaMm2": 50035.021914843266,
  "beforeAreaProvenance": "Actual OCCT region clip saved in original lifecycle-receipt.json, with boundary identity independently verified",
  "afterActualClippedAreaMm2": 47832.641302997596,
  "areaChangeMm2": -2202.3806118456705,
  "afterClip": {
    "area": 47832.641302997596,
    "clippedFaceIds": [
      "F41"
    ],
    "untouchedFaceIds": [],
    "fragments": [
      {
        "sourceFaceId": "F41",
        "fragmentId": "F41/R1",
        "areaMm2": 47832.641302997596
      }
    ]
  },
  "nativeCutoutTrimsRetained": true,
  "supportFaceIds": [
    "F41"
  ],
  "beforeChecks": {
    "maximum": null,
    "requireSymmetry": true,
    "requireBalance": true,
    "regions": [
      {
        "regionId": "rg-1",
        "regionName": "Continuous laminate",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 12 mirror pair(s) of the 24 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 24 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-2",
        "regionName": "Staggered transition load path / drop 1",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 2 mirror pair(s) of the 4 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 4 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-3",
        "regionName": "Left attachment interface / drop 1",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 1 mirror pair(s) of the 2 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 2 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-4",
        "regionName": "Crown interface / drop 1",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 1 mirror pair(s) of the 2 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 2 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-5",
        "regionName": "Staggered transition load path / drop 2",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 2 mirror pair(s) of the 4 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 4 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-6",
        "regionName": "Left attachment interface / drop 2",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 1 mirror pair(s) of the 2 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 2 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-7",
        "regionName": "Crown interface / drop 2",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 1 mirror pair(s) of the 2 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 2 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-8",
        "regionName": "Staggered transition load path / drop 3",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 2 mirror pair(s) of the 4 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 4 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-9",
        "regionName": "Left attachment interface / drop 3",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 1 mirror pair(s) of the 2 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 2 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-10",
        "regionName": "Crown interface / drop 3",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 1 mirror pair(s) of the 2 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 2 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      }
    ],
    "designRevision": 69
  },
  "afterChecks": {
    "maximum": null,
    "requireSymmetry": true,
    "requireBalance": true,
    "regions": [
      {
        "regionId": "rg-1",
        "regionName": "Continuous laminate",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 12 mirror pair(s) of the 24 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 24 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-2",
        "regionName": "Staggered transition load path / drop 1",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 2 mirror pair(s) of the 4 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 4 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-3",
        "regionName": "Left attachment interface / drop 1",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 1 mirror pair(s) of the 2 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 2 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-4",
        "regionName": "Crown interface / drop 1",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 1 mirror pair(s) of the 2 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 2 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-5",
        "regionName": "Staggered transition load path / drop 2",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 2 mirror pair(s) of the 4 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 4 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-6",
        "regionName": "Left attachment interface / drop 2",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 1 mirror pair(s) of the 2 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 2 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-7",
        "regionName": "Crown interface / drop 2",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 1 mirror pair(s) of the 2 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 2 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-8",
        "regionName": "Staggered transition load path / drop 3",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 2 mirror pair(s) of the 4 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 4 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-9",
        "regionName": "Left attachment interface / drop 3",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 0 mirror pair(s) of the 0 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 0 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-10",
        "regionName": "Crown interface / drop 3",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 1 mirror pair(s) of the 2 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 2 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      },
      {
        "regionId": "rg-root-3-stagger-revision",
        "regionName": "Left attachment interface / drop 3 / shortened revision",
        "consecutive": {
          "status": "NOT_SET",
          "scopeNote": "This checks each region’s assigned-ply sequence in document order. It does not check the local spatial stack at overlapping regions, solved fibre direction, or manufacturability."
        },
        "symmetry": {
          "status": "PASS",
          "code": "SYMMETRIC",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "All 1 mirror pair(s) of the 2 assigned ply/plies agree."
        },
        "balance": {
          "status": "PASS",
          "code": "BALANCED",
          "plyIds": [],
          "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
          "message": "Every off-axis angle among the 2 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
        }
      }
    ],
    "designRevision": 72
  },
  "section": {
    "projection": "XY",
    "along": "X",
    "acrossPercent": 50,
    "yMm": 17.5,
    "xRangeMm": [
      -650,
      650
    ],
    "sampleCount": 161,
    "changedStationIndex": 26,
    "changedStationX": -438.75,
    "before": {
      "x": -438.75,
      "y": 17.5,
      "localPlyCount": 38,
      "gaugeMm": 5.0920000000000005,
      "activePlyIds": [
        "ply-1",
        "ply-2",
        "ply-3",
        "ply-4",
        "ply-5",
        "ply-6",
        "ply-7",
        "ply-8",
        "ply-9",
        "ply-10",
        "ply-11",
        "ply-12",
        "ply-13",
        "ply-14",
        "ply-15",
        "ply-17",
        "ply-18",
        "ply-19",
        "ply-23",
        "ply-26",
        "ply-30",
        "ply-31",
        "ply-32",
        "ply-34",
        "ply-35",
        "ply-36",
        "ply-37",
        "ply-38",
        "ply-39",
        "ply-40",
        "ply-41",
        "ply-42",
        "ply-43",
        "ply-44",
        "ply-45",
        "ply-46",
        "ply-47",
        "ply-48"
      ],
      "symmetry": {
        "status": "PASS",
        "code": "SYMMETRIC",
        "plyIds": [],
        "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
        "message": "All 19 mirror pair(s) of the 38 assigned ply/plies agree."
      },
      "balance": {
        "status": "PASS",
        "code": "BALANCED",
        "plyIds": [],
        "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
        "message": "Every off-axis angle among the 38 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
      }
    },
    "after": {
      "x": -438.75,
      "y": 17.5,
      "localPlyCount": 36,
      "gaugeMm": 4.824,
      "activePlyIds": [
        "ply-1",
        "ply-2",
        "ply-3",
        "ply-4",
        "ply-5",
        "ply-6",
        "ply-7",
        "ply-8",
        "ply-9",
        "ply-10",
        "ply-11",
        "ply-12",
        "ply-13",
        "ply-14",
        "ply-15",
        "ply-17",
        "ply-18",
        "ply-19",
        "ply-30",
        "ply-31",
        "ply-32",
        "ply-34",
        "ply-35",
        "ply-36",
        "ply-37",
        "ply-38",
        "ply-39",
        "ply-40",
        "ply-41",
        "ply-42",
        "ply-43",
        "ply-44",
        "ply-45",
        "ply-46",
        "ply-47",
        "ply-48"
      ],
      "symmetry": {
        "status": "PASS",
        "code": "SYMMETRIC",
        "plyIds": [],
        "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
        "message": "All 18 mirror pair(s) of the 36 assigned ply/plies agree."
      },
      "balance": {
        "status": "PASS",
        "code": "BALANCED",
        "plyIds": [],
        "scopeNote": "This compares each region’s assigned plies in document order by their declared orientation reference, angle, material and thickness. It does not evaluate solved fibre directions, the local spatial stack at overlapping regions, or manufacturability.",
        "message": "Every off-axis angle among the 36 assigned ply/plies has an equal opposite-angle partner under the same declared reference and material; 0° and 90° are self-balanced."
      }
    },
    "basis": "Identical native support bounds give the same XY section and 161 display stations; this solid point is outside the native lightening ellipses and attachment holes. Declared spatial polygon membership and nominal CPT, not strength or forming."
  },
  "storedRegionCount": 11,
  "assignedFootprintCount": 10,
  "supersededRegionRetained": "Original drop-3 region stays unassigned as review history; baseline complete file remains untouched",
  "checkpointFiles": [
    "case03-zone-transition-web-08-boundary-review-baseline.cad-laminate.json",
    "case03-zone-transition-web-09-root-stagger-revision.cad-laminate.json"
  ],
  "roundtrip": {
    "baseline": {
      "pass": true,
      "serializedDomainByteIdentity": true,
      "domainSha256": "edd9f40101ddfb95c5b2557a4cf2d72c02d6cb285f11332b5d40964683b57d4a"
    },
    "revised": {
      "pass": true,
      "serializedDomainByteIdentity": true,
      "domainSha256": "05135523aa903d4430c30c9ddca5320e5003d9460628e8966eb7f6260b2c2429"
    }
  }
}