{
  "assembly_id": "emberscope-payload-assembly-v1",
  "maturity": "engineering_development_geometry",
  "optical_interface": {
    "canonical_sha256": "376fba6fc36fa558b57718686e29aad0aaaab91b621dece9078f10ec62735afc",
    "replacement_contract": {
      "acceptance_rule": "A replacement source must fit the reserved volume, preserve the declared mechanical aperture allowance, and remain within the payload mass budget after the same validation screens are rerun; optical no-vignetting remains a separate ray-trace gate.",
      "allowed_changes": "Optical source path, source-axis mapping, reserved volume, and detector mount plane.",
      "housing_invariant": "No enclosure, electronics, connector, service-panel, heat-path, or drone-adapter coordinate may depend on individual mirror coordinates."
    },
    "repository_path": "projects/rural-fire-service-camera/mechanical/emberscope-optical-cassette-interface.v1.json"
  },
  "optical_source": {
    "canonical_design_sha256": "c843068d020eae2801b13fa683746002fe79e780406a7f8ea39428e9083e4fc7",
    "disposition": "measured_failed_p2_candidate_used_for_envelope_only",
    "exact_file_sha256": "267f3bf93fe68638ee328d74f93399759e84459c050a6ebafb1e890a5081de3b",
    "mapped_envelope_mm": [
      90.0,
      88.629919,
      80.601638
    ],
    "mass_proxy_kg": 0.363922359,
    "repository_path": "projects/rural-fire-service-camera/designs/emberscope-three-mirror-fine-gsd-100.v1.json",
    "reserved_volume_mm": [
      92.0,
      92.0,
      84.0
    ],
    "total_clearance_margin_mm": [
      2.0,
      3.370081,
      3.398362
    ]
  },
  "outputs": [
    {
      "bytes": 4111,
      "path": "emberscope-payload-assembly-v1.scad",
      "sha256": "e5dea43393a48c7ab02100b7df11421c65ae3e6ea9002a35a6503ddc626f0f6d"
    },
    {
      "bytes": 12820,
      "path": "emberscope-payload-assembly-v1.validation.json",
      "sha256": "4b9104f9584f5def2ea774b794904da24739b1f7f18f1a8b56d16e1e3f132305"
    },
    {
      "bytes": 2665,
      "path": "emberscope-payload-envelope-v1.stl",
      "sha256": "b4eac321381a03596c1294c72c98acc648c4b64ccfa76be375a5e4cfc3ded1e9"
    }
  ],
  "release_boundary": "Engineering-development geometry only; not CNC-ready, fabrication-ready, tolerance-supported, sealed, thermally qualified, or optically accepted.",
  "revision": "2026-08-03",
  "schema": "emberscope_payload_mechanical_cad/v1",
  "source": {
    "canonical_sha256": "64840c30413eb542c2e35ebf07c0ded123cad1b3b2e9077ca38ced100261ff93",
    "exact_file_sha256": "3c2b82577ad711120fe8a508166dd951522dd669c58fd5cd2f167a5d17fca7cb",
    "repository_path": "projects/rural-fire-service-camera/mechanical/emberscope-payload-assembly.v1.json"
  }
}
