// Forge — Space tenant fixture (Aetherion Microsat · KESTREL-3 12U cubesat)
// Babel-standalone in-browser pattern. NO ES imports / exports.
// Single global: const AETHERION_TENANT = { ... };
// Spec: forge-web/demo/tenant-spec/space.md
// Today (in-demo): 2026-05-09. ECO-AET-0042 in board review · pending Mission Director.

const AETHERION_TENANT = {
  // ── Tenant identity ────────────────────────────────────────────────
  tenant: {
    id: "aetherion",
    aliases: ["htu220"], // legacy redirect target per spec §1
    name: "Aetherion Microsat",
    legal: "Aetherion Microsat, Inc.",
    site: "Sunnyvale, CA · ISO 14644-1 Class 7 cleanroom",
    erp: "Teamcenter (Siemens)",
    cad: "Siemens NX 2412 + Solidworks 2024 (harness only)",
    depth: "deep",
    color: "Cool blues over deep navy",
    tagline: "Mission-class hardware, shipped on a fixed-price clock. We fly the bird, not the org chart.",
    sub_vertical: "leo-smallsat",
    regulations: ["ITAR", "EAR", "AS9100", "NASA-STD-8739", "ECSS-Q-ST-70"],
    employees: 42,
    founded: 2021,
  },

  // ── Hero program: KESTREL-3 single-flight 12U for Aperture Earth ──
  program: {
    id: "PGM-KESTREL-3-APE",
    code: "KESTREL-3",
    name: "KESTREL-3 · 12U EO bus · X-band 50 Mbps · sun-sync LEO",
    customer: "Aperture Earth Analytics",
    contract_value_usd: 4200000,
    contract_type: "FFP", // fixed-price firm
    qty: 1,
    bus_class: "12U cubesat",
    dry_mass_kg: 14.000,
    current_mass_kg: 12.460,
    payload_avg_w: 32.0,
    bus_avg_w: 38.0,
    solar_bol_w: 70.0,
    delta_v_mps: 30,
    orbit: "Sun-sync LEO 525 km · dawn-dusk LTAN 06:00",
    downlink: "X-band 50 Mbps + UHF TT&C",
    launch_vehicle: "Falcon 9 Transporter-15",
    loi_signed: "2025-01-12",
    srr_closed: "2025-03-04",
    pdr_closed: "2025-06-18",
    cdr_closed: "2025-10-22",
    fab_a_complete: "2026-01-30",
    tvac_chatter: "2026-04-22",
    eco_raised: "2026-04-24",
    fab_b_reissue: "2026-05-05",
    retest_target: "2026-05-28",
    acc_target: "2026-07-15",
    launch_target: "2026-09-10",
    revision: "D",
    lead: "M. Sato · Mech Lead",
    progress: 0.62,
    nextMilestone: "TVAC partial re-test",
    nextDate: "2026-05-28",
    phase: "Integration & Test",
  },

  // ── KPI strip · spec §4 (exact shape from fixtures-pump.jsx:34-41) ─
  kpis: [
    { k: "Mass margin",         v: "11.0%",  d: "1.54 kg / 14.00 kg cap", trend: "down" },
    { k: "Power margin",        v: "8 W",    d: "70 W BOL · 32 W pl",     trend: "flat" },
    { k: "Open NCRs",           v: "2",      d: "1 critical · hinge",     trend: "flat" },
    { k: "Days to launch",      v: "124",    d: "T-0 2026-09-10",         trend: "down" },
    { k: "Qual gate pass rate", v: "94%",    d: "118 / 126 tests",        trend: "up"   },
    { k: "Telemetry latency",   v: "112 ms", d: "uplink p95 last 24h",    trend: "flat" },
  ],

  // ── Lifecycle gates · spec §5 (9-gate space program) ──────────────
  lifecycle: [
    { gate: "SRR",    name: "System Requirements Review",    date: "2025-03-04", status: "passed",     note: "passed · 7 actions tracked" },
    { gate: "PDR",    name: "Preliminary Design Review",     date: "2025-06-18", status: "passed",     note: "passed · propulsion trade study attached" },
    { gate: "CDR",    name: "Critical Design Review",        date: "2025-10-22", status: "passed",     note: "passed · mass margin 11.4%" },
    { gate: "FAB-A",  name: "Fabrication · Build A",         date: "2026-01-30", status: "passed",     note: "structure + harness on bench" },
    { gate: "FAB-B",  name: "Fabrication · Build B re-issue",date: "2026-05-05", status: "in-flight",  note: "4 hinges re-built post ECO-AET-0042" },
    { gate: "ASSY",   name: "Assembly · Integration",        date: "2026-02-—",  status: "in-flight",  note: "integration ongoing" },
    { gate: "I&T",    name: "Integration & Test",            date: "2026-03-—",  status: "in-flight",  note: "paused for ECO retest" },
    { gate: "TVAC",   name: "Thermal-Vacuum re-test",        date: "2026-05-28", status: "in-flight",  note: "TVAC-AET-014R · partial pass target" },
    { gate: "ACC",    name: "Flight Acceptance",             date: "2026-07-15", status: "upcoming",   note: "Mission Director sign target" },
    { gate: "LAUNCH", name: "Launch Manifest Lock",          date: "2026-09-10", status: "upcoming",   note: "Falcon 9 Transporter-15" },
  ],

  // ── Navigation (16 ids, mirrors pump pattern, space labels) ───────
  nav: [
    { g: "Program", items: [
      { id: "dashboard",    label: "Mission Overview",                icon: "Home"      },
      { id: "onboarding",   label: "Customer Onboarding",             icon: "Sparkle"   },
    ]},
    { g: "Plan", items: [
      { id: "plc",          label: "Mission Lifecycle · 9 gates",     icon: "Satellite" },
      { id: "gantt",        label: "Schedule · plan://",              icon: "Calendar"  },
      { id: "lifecycle",    label: "Mission Gates (FSM)",             icon: "Flow"      },
    ]},
    { g: "Build", items: [
      { id: "ebom",         label: "E-BOM · KESTREL-3",               icon: "Tree"      },
      { id: "ebomtombom",   label: "E-BOM → M-BOM",                   icon: "Diff"      },
      { id: "mbom",         label: "M-BOM · Stations",                icon: "Factory"   },
      { id: "workflows",    label: "Workflow Hub · build://",         icon: "Flow"      },
      { id: "eco",          label: "ECO · Change Orders",             icon: "Git"       },
      { id: "approvals",    label: "Approvals",                       icon: "Check"     },
      { id: "erp",          label: "Teamcenter Release",              icon: "Plug"      },
    ]},
    { g: "Line", items: [
      { id: "line",         label: "Cleanroom Line · line://",        icon: "Factory"   },
      { id: "analytics",    label: "Telemetry Analytics",             icon: "BarChart"  },
      { id: "connectors",   label: "Connectors · MIL-DTL-38999",      icon: "Link"      },
    ]},
    { g: "Traveler", items: [
      { id: "traveler",     label: "Station Console · traveler://",   icon: "Wrench"    },
    ]},
    { g: "Governance", items: [
      { id: "auditor",      label: "Auditor · ledger (ITAR-aware)",   icon: "Check"     },
    ]},
    { g: "Organization", items: [
      { id: "people",       label: "People & HR",                     icon: "Person"    },
      { id: "docs",         label: "Documents · ITAR/AS9100",         icon: "File"      },
      { id: "maintenance",  label: "Cleanroom Maintenance",           icon: "Wrench"    },
      { id: "integrations", label: "Integrations",                    icon: "DB"        },
    ]},
  ],

  // ── Parts catalog · 11 L1 + ≥80 leaves · MASS / POWER / HERITAGE ──
  parts: [
    // ── L0 top assembly ──
    { num: "KESTREL-3.00.00", p: null,             name: "KESTREL-3 · 12U bus + payload assembly (rev D)", qty: 1, mass_g: 14000, power_w: 70.0, heritage: "—",            qual: "engineering-model", part_num: "KESTREL-3.00.00", supplier: "Aetherion · in-house" },

    // ── L1 subassemblies (11 per spec §3) ──
    { num: "KESTREL-3.10.00", p: "KESTREL-3.00.00", name: "Primary structure · skeletonized 12U",        qty: 1, mass_g: 2640,  power_w: 0.0,  heritage: "TRL-9",         qual: "qual-passed",   part_num: "KESTREL-3.10.00", supplier: "ISIS" },
    { num: "KESTREL-3.20.00", p: "KESTREL-3.00.00", name: "Avionics · OBC + EPS stack",                  qty: 1, mass_g: 1180,  power_w: 8.4,  heritage: "TRL-9 · ISS-6Y", qual: "qual-passed",   part_num: "KESTREL-3.20.00", supplier: "AAC Clyde Space" },
    { num: "KESTREL-3.30.00", p: "KESTREL-3.00.00", name: "ADCS · star tracker + 3 reaction wheels",     qty: 1, mass_g: 920,   power_w: 11.2, heritage: "TRL-8",         qual: "qual-passed",   part_num: "KESTREL-3.30.00", supplier: "Sodern + Blue Canyon" },
    { num: "KESTREL-3.40.00", p: "KESTREL-3.00.00", name: "Propulsion · cold gas R-236fa",               qty: 1, mass_g: 1860,  power_w: 2.0,  heritage: "TRL-7",         qual: "qual-pending",  part_num: "KESTREL-3.40.00", supplier: "VACCO Industries" },
    { num: "KESTREL-3.50.00", p: "KESTREL-3.00.00", name: "Comms · X-band 50 Mbps + UHF TT&C",           qty: 1, mass_g: 860,   power_w: 18.0, heritage: "TRL-9",         qual: "qual-passed",   part_num: "KESTREL-3.50.00", supplier: "Tethers Unlimited" },
    { num: "KESTREL-3.60.00", p: "KESTREL-3.00.00", name: "Solar array · 4× deployable wing",            qty: 1, mass_g: 1320,  power_w: 0.0,  heritage: "TRL-9 · ISS-6Y", qual: "flight-spare",  part_num: "KESTREL-3.60.00", supplier: "Honeybee Robotics" },
    { num: "KESTREL-3.70.00", p: "KESTREL-3.00.00", name: "Battery pack · 80 Wh Li-ion 8s2p",            qty: 1, mass_g: 720,   power_w: 0.6,  heritage: "TRL-9",         qual: "qual-passed",   part_num: "KESTREL-3.70.00", supplier: "EaglePicher" },
    { num: "KESTREL-3.80.00", p: "KESTREL-3.00.00", name: "Harness · MIL-DTL-38999 + Glenair overbraid", qty: 1, mass_g: 580,   power_w: 0.0,  heritage: "TRL-9",         qual: "qual-passed",   part_num: "KESTREL-3.80.00", supplier: "Glenair / Amphenol" },
    { num: "KESTREL-3.90.00", p: "KESTREL-3.00.00", name: "Thermal · MLI + heaters + Aerogel",           qty: 1, mass_g: 410,   power_w: 3.4,  heritage: "TRL-9",         qual: "qual-passed",   part_num: "KESTREL-3.90.00", supplier: "Sheldahl + Aerogel Tech" },
    { num: "KESTREL-3.A0.00", p: "KESTREL-3.00.00", name: "RF deck · LNA + diplexer",                    qty: 1, mass_g: 240,   power_w: 1.4,  heritage: "TRL-9",         qual: "qual-passed",   part_num: "KESTREL-3.A0.00", supplier: "L3Harris RF" },
    { num: "KESTREL-3.B0.00", p: "KESTREL-3.00.00", name: "Payload · 1m-GSD imager + X-band TX",         qty: 1, mass_g: 3270,  power_w: 25.0, heritage: "TRL-6",         qual: "engineering-model", part_num: "KESTREL-3.B0.00", supplier: "Simera Sense + payload integ in-house" },

    // ── L2 · Primary structure (10.xx) ──
    { num: "KESTREL-3.10.01", p: "KESTREL-3.10.00", name: "ISIS 12U structure base frame",            qty: 1, mass_g: 1480, power_w: 0.0, heritage: "TRL-9 · ISS-6Y", qual: "qual-passed",  part_num: "KESTREL-3.10.01", supplier: "ISIS" },
    { num: "KESTREL-3.10.02", p: "KESTREL-3.10.00", name: "Side panel +X · 6061-T6 skeletonized",     qty: 1, mass_g: 220,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed",  part_num: "KESTREL-3.10.02", supplier: "ISIS" },
    { num: "KESTREL-3.10.03", p: "KESTREL-3.10.00", name: "Side panel −X · 6061-T6 skeletonized",     qty: 1, mass_g: 220,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed",  part_num: "KESTREL-3.10.03", supplier: "ISIS" },
    { num: "KESTREL-3.10.04", p: "KESTREL-3.10.00", name: "Side panel +Y · 6061-T6 skeletonized",     qty: 1, mass_g: 220,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed",  part_num: "KESTREL-3.10.04", supplier: "ISIS" },
    { num: "KESTREL-3.10.05", p: "KESTREL-3.10.00", name: "Side panel −Y · 6061-T6 skeletonized",     qty: 1, mass_g: 220,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed",  part_num: "KESTREL-3.10.05", supplier: "ISIS" },
    { num: "KESTREL-3.10.06", p: "KESTREL-3.10.00", name: "Top deck · payload mount interface",       qty: 1, mass_g: 140,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed",  part_num: "KESTREL-3.10.06", supplier: "ISIS" },
    { num: "KESTREL-3.10.07", p: "KESTREL-3.10.00", name: "Bottom deck · separation ring interface",  qty: 1, mass_g: 140,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed",  part_num: "KESTREL-3.10.07", supplier: "ISIS" },

    // ── L2 · Avionics OBC + EPS (20.xx) ──
    { num: "KESTREL-3.20.01", p: "KESTREL-3.20.00", name: "AAC Clyde Sirius OBC (LEON3 SoC)",         qty: 1, mass_g: 240, power_w: 3.2, heritage: "TRL-9 · ISS-6Y", qual: "qual-passed", part_num: "KESTREL-3.20.01", supplier: "AAC Clyde Space" },
    { num: "KESTREL-3.20.02", p: "KESTREL-3.20.00", name: "AAC Clyde Starbuck Nano EPS",              qty: 1, mass_g: 195, power_w: 1.8, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.20.02", supplier: "AAC Clyde Space" },
    { num: "KESTREL-3.20.03", p: "KESTREL-3.20.00", name: "PCDU · power conditioning + distribution", qty: 1, mass_g: 215, power_w: 1.4, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.20.03", supplier: "AAC Clyde Space" },
    { num: "KESTREL-3.20.04", p: "KESTREL-3.20.00", name: "Mass memory · 256 GB SLC SSD radhard",     qty: 1, mass_g: 110, power_w: 0.6, heritage: "TRL-8",         qual: "qual-passed", part_num: "KESTREL-3.20.04", supplier: "Mercury Systems" },
    { num: "KESTREL-3.20.05", p: "KESTREL-3.20.00", name: "Backplane PCB · OBC stack (8-layer Ro4)",  qty: 1, mass_g: 95,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.20.05", supplier: "AAC Clyde Space" },
    { num: "KESTREL-3.20.06", p: "KESTREL-3.20.00", name: "Watchdog timer + safe-mode controller",    qty: 1, mass_g: 45,  power_w: 0.4, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.20.06", supplier: "AAC Clyde Space" },
    { num: "KESTREL-3.20.07", p: "KESTREL-3.20.00", name: "EPS heater driver board",                  qty: 1, mass_g: 90,  power_w: 0.4, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.20.07", supplier: "AAC Clyde Space" },
    { num: "KESTREL-3.20.08", p: "KESTREL-3.20.00", name: "Telemetry conditioning board",             qty: 1, mass_g: 75,  power_w: 0.4, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.20.08", supplier: "AAC Clyde Space" },
    { num: "KESTREL-3.20.09", p: "KESTREL-3.20.00", name: "Mounting hardware · OBC stack (M2.5 A286)",qty: 16,mass_g: 115, power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.20.09", supplier: "Glenair / Amphenol" },

    // ── L2 · ADCS (30.xx) ──
    { num: "KESTREL-3.30.01", p: "KESTREL-3.30.00", name: "Sodern Auriga CP star tracker",            qty: 1, mass_g: 280, power_w: 1.6, heritage: "TRL-8",         qual: "qual-passed", part_num: "KESTREL-3.30.01", supplier: "Sodern" },
    { num: "KESTREL-3.30.02", p: "KESTREL-3.30.00", name: "Blue Canyon RWp050 reaction wheel · X",    qty: 1, mass_g: 175, power_w: 3.0, heritage: "TRL-9 · ISS-6Y", qual: "qual-passed", part_num: "KESTREL-3.30.02", supplier: "Blue Canyon Tech" },
    { num: "KESTREL-3.30.03", p: "KESTREL-3.30.00", name: "Blue Canyon RWp050 reaction wheel · Y",    qty: 1, mass_g: 175, power_w: 3.0, heritage: "TRL-9 · ISS-6Y", qual: "qual-passed", part_num: "KESTREL-3.30.03", supplier: "Blue Canyon Tech" },
    { num: "KESTREL-3.30.04", p: "KESTREL-3.30.00", name: "Blue Canyon RWp050 reaction wheel · Z",    qty: 1, mass_g: 175, power_w: 3.0, heritage: "TRL-9 · ISS-6Y", qual: "qual-passed", part_num: "KESTREL-3.30.04", supplier: "Blue Canyon Tech" },
    { num: "KESTREL-3.30.05", p: "KESTREL-3.30.00", name: "Magnetorquer rod · 0.2 Am² · 3-axis",      qty: 3, mass_g: 80,  power_w: 0.4, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.30.05", supplier: "ZARM Technik" },
    { num: "KESTREL-3.30.06", p: "KESTREL-3.30.00", name: "Sun sensor · coarse · ±60° · 6-face",      qty: 6, mass_g: 30,  power_w: 0.1, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.30.06", supplier: "Solar MEMS" },
    { num: "KESTREL-3.30.07", p: "KESTREL-3.30.00", name: "IMU · STIM320 · 3-axis gyro + accel",      qty: 1, mass_g: 65,  power_w: 0.6, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.30.07", supplier: "Sensonor (Safran)" },
    { num: "KESTREL-3.30.08", p: "KESTREL-3.30.00", name: "ADCS bracket · star tracker boresight",    qty: 1, mass_g: 80,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.30.08", supplier: "Aetherion · in-house" },

    // ── L2 · Propulsion cold gas (40.xx) ──
    { num: "KESTREL-3.40.01", p: "KESTREL-3.40.00", name: "R-236fa propellant tank · 0.95 L Ti-6Al-4V",qty: 1, mass_g: 720, power_w: 0.0, heritage: "TRL-7",         qual: "qual-pending", part_num: "KESTREL-3.40.01", supplier: "VACCO Industries" },
    { num: "KESTREL-3.40.02", p: "KESTREL-3.40.00", name: "Service valve · fill & vent",              qty: 1, mass_g: 90,  power_w: 0.0, heritage: "TRL-7",         qual: "qual-pending", part_num: "KESTREL-3.40.02", supplier: "VACCO Industries" },
    { num: "KESTREL-3.40.03", p: "KESTREL-3.40.00", name: "Latch valve · normally closed",            qty: 1, mass_g: 110, power_w: 0.4, heritage: "TRL-7",         qual: "qual-pending", part_num: "KESTREL-3.40.03", supplier: "VACCO Industries" },
    { num: "KESTREL-3.40.04", p: "KESTREL-3.40.00", name: "Thruster assembly · 4× nozzle ±X ±Y",      qty: 4, mass_g: 130, power_w: 0.3, heritage: "TRL-6",         qual: "qual-pending", part_num: "KESTREL-3.40.04", supplier: "VACCO Industries" },
    { num: "KESTREL-3.40.05", p: "KESTREL-3.40.00", name: "Pressure transducer · 0–60 bar",           qty: 2, mass_g: 70,  power_w: 0.2, heritage: "TRL-9",         qual: "qual-passed",  part_num: "KESTREL-3.40.05", supplier: "Kulite Semiconductor" },
    { num: "KESTREL-3.40.06", p: "KESTREL-3.40.00", name: "Manifold block · 6061-T6 EDM",             qty: 1, mass_g: 240, power_w: 0.0, heritage: "TRL-7",         qual: "qual-pending", part_num: "KESTREL-3.40.06", supplier: "VACCO Industries" },
    { num: "KESTREL-3.40.07", p: "KESTREL-3.40.00", name: "Heater · prop line · 4 W kapton",          qty: 2, mass_g: 50,  power_w: 0.8, heritage: "TRL-9",         qual: "qual-passed",  part_num: "KESTREL-3.40.07", supplier: "Minco Products" },

    // ── L2 · Comms (50.xx) ──
    { num: "KESTREL-3.50.01", p: "KESTREL-3.50.00", name: "X-band SDR transmitter · 50 Mbps",         qty: 1, mass_g: 320, power_w: 12.0, heritage: "TRL-8",         qual: "qual-passed", part_num: "KESTREL-3.50.01", supplier: "Tethers Unlimited" },
    { num: "KESTREL-3.50.02", p: "KESTREL-3.50.00", name: "X-band patch antenna · 8 dBi",             qty: 1, mass_g: 90,  power_w: 0.0,  heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.50.02", supplier: "Antcom" },
    { num: "KESTREL-3.50.03", p: "KESTREL-3.50.00", name: "UHF TT&C transceiver · 9k6 GMSK",          qty: 1, mass_g: 175, power_w: 4.5,  heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.50.03", supplier: "GomSpace" },
    { num: "KESTREL-3.50.04", p: "KESTREL-3.50.00", name: "UHF deployable antenna · 4-element turnstile", qty: 1, mass_g: 120, power_w: 0.0, heritage: "TRL-9",      qual: "qual-passed", part_num: "KESTREL-3.50.04", supplier: "ISIS" },
    { num: "KESTREL-3.50.05", p: "KESTREL-3.50.00", name: "Coax assembly · X-band SMA · low-loss",    qty: 2, mass_g: 55,  power_w: 0.0,  heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.50.05", supplier: "W.L. Gore" },
    { num: "KESTREL-3.50.06", p: "KESTREL-3.50.00", name: "Coax assembly · UHF · 1.5 m",              qty: 1, mass_g: 35,  power_w: 0.0,  heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.50.06", supplier: "W.L. Gore" },
    { num: "KESTREL-3.50.07", p: "KESTREL-3.50.00", name: "Comms baseboard PCB",                      qty: 1, mass_g: 65,  power_w: 1.5,  heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.50.07", supplier: "Tethers Unlimited" },

    // ── L2 · Solar array (60.xx) ──
    { num: "KESTREL-3.60.01", p: "KESTREL-3.60.00", name: "Solar wing +X · 24× UTJ cells GaAs 30%",   qty: 1, mass_g: 295, power_w: 0.0, heritage: "TRL-9 · ISS-6Y", qual: "qual-passed", part_num: "KESTREL-3.60.01", supplier: "Honeybee Robotics" },
    { num: "KESTREL-3.60.02", p: "KESTREL-3.60.00", name: "Solar wing −X · 24× UTJ cells GaAs 30%",   qty: 1, mass_g: 295, power_w: 0.0, heritage: "TRL-9 · ISS-6Y", qual: "qual-passed", part_num: "KESTREL-3.60.02", supplier: "Honeybee Robotics" },
    { num: "KESTREL-3.60.03", p: "KESTREL-3.60.00", name: "Solar wing +Y · 24× UTJ cells GaAs 30%",   qty: 1, mass_g: 295, power_w: 0.0, heritage: "TRL-9 · ISS-6Y", qual: "qual-passed", part_num: "KESTREL-3.60.03", supplier: "Honeybee Robotics" },
    { num: "KESTREL-3.60.04", p: "KESTREL-3.60.00", name: "Solar wing −Y · 24× UTJ cells GaAs 30%",   qty: 1, mass_g: 295, power_w: 0.0, heritage: "TRL-9 · ISS-6Y", qual: "qual-passed", part_num: "KESTREL-3.60.04", supplier: "Honeybee Robotics" },
    { num: "KESTREL-3.60.HG", p: "KESTREL-3.60.00", name: "Hinge subassembly · 4× HDRM spring-loaded",qty: 4, mass_g: 35,  power_w: 0.0, heritage: "TRL-9 · ISS-6Y", qual: "waiver-N",    part_num: "KESTREL-3.60.HG", supplier: "Honeybee Robotics" },
    { num: "KESTREL-3.60.HG.01", p: "KESTREL-3.60.HG", name: "Hinge body · machined Ti-6Al-4V",       qty: 4, mass_g: 18,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed",  part_num: "KESTREL-3.60.HG.01", supplier: "Honeybee Robotics" },
    { num: "KESTREL-3.60.HG.02", p: "KESTREL-3.60.HG", name: "Hinge spring · stainless 17-7 PH",      qty: 4, mass_g: 4,   power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed",  part_num: "KESTREL-3.60.HG.02", supplier: "Honeybee Robotics" },
    { num: "KESTREL-3.60.HG.03", p: "KESTREL-3.60.HG", name: "Hinge fastener stack · M3 (rev B → C)", qty: 4, mass_g: 6,   power_w: 0.0, heritage: "TRL-9",         qual: "engineering-model", part_num: "KESTREL-3.60.HG.03", supplier: "Honeybee Robotics", eco_open: "ECO-AET-0042" },
    { num: "KESTREL-3.60.HG.04", p: "KESTREL-3.60.HG", name: "Burn wire · resistive 0.2 mm Nichrome", qty: 4, mass_g: 2,   power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed",  part_num: "KESTREL-3.60.HG.04", supplier: "Honeybee Robotics" },
    { num: "KESTREL-3.60.05", p: "KESTREL-3.60.00", name: "Yoke arm · 6061-T6 honeycomb",             qty: 4, mass_g: 70,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed",  part_num: "KESTREL-3.60.05", supplier: "Honeybee Robotics" },

    // ── L2 · Battery (70.xx) ──
    { num: "KESTREL-3.70.01", p: "KESTREL-3.70.00", name: "Cell pack · 8s2p Li-ion 18650 NCM",        qty: 1, mass_g: 540, power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.70.01", supplier: "EaglePicher" },
    { num: "KESTREL-3.70.02", p: "KESTREL-3.70.00", name: "BMS board · cell-balance + protection",    qty: 1, mass_g: 90,  power_w: 0.4, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.70.02", supplier: "EaglePicher" },
    { num: "KESTREL-3.70.03", p: "KESTREL-3.70.00", name: "Battery housing · 6061-T6 + thermal pad",  qty: 1, mass_g: 65,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.70.03", supplier: "EaglePicher" },
    { num: "KESTREL-3.70.04", p: "KESTREL-3.70.00", name: "Heater pad · 2 W kapton (cold-soak)",      qty: 1, mass_g: 25,  power_w: 0.2, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.70.04", supplier: "Minco Products" },

    // ── L2 · Harness (80.xx) ──
    { num: "KESTREL-3.80.01", p: "KESTREL-3.80.00", name: "Power harness · MIL-DTL-38999 series III", qty: 1, mass_g: 220, power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.80.01", supplier: "Glenair / Amphenol" },
    { num: "KESTREL-3.80.02", p: "KESTREL-3.80.00", name: "Data harness · LVDS twisted-pair",         qty: 1, mass_g: 140, power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.80.02", supplier: "Glenair / Amphenol" },
    { num: "KESTREL-3.80.03", p: "KESTREL-3.80.00", name: "RF coax bundle · X-band + UHF",            qty: 1, mass_g: 90,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.80.03", supplier: "W.L. Gore" },
    { num: "KESTREL-3.80.04", p: "KESTREL-3.80.00", name: "Overbraid · ESD-bonded 4 mm",              qty: 1, mass_g: 80,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.80.04", supplier: "Glenair / Amphenol" },
    { num: "KESTREL-3.80.05", p: "KESTREL-3.80.00", name: "Connector saver kit · MIL-DTL-38999 III",  qty: 8, mass_g: 30,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.80.05", supplier: "Glenair / Amphenol" },
    { num: "KESTREL-3.80.06", p: "KESTREL-3.80.00", name: "Backshell · environmental seal",           qty: 8, mass_g: 20,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.80.06", supplier: "Glenair / Amphenol" },

    // ── L2 · Thermal (90.xx) ──
    { num: "KESTREL-3.90.01", p: "KESTREL-3.90.00", name: "MLI blanket · 15-layer · top deck",        qty: 1, mass_g: 95,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.90.01", supplier: "Sheldahl" },
    { num: "KESTREL-3.90.02", p: "KESTREL-3.90.00", name: "MLI blanket · 15-layer · sides ±X ±Y",     qty: 4, mass_g: 80,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.90.02", supplier: "Sheldahl" },
    { num: "KESTREL-3.90.03", p: "KESTREL-3.90.00", name: "Aerogel insert · battery cavity",          qty: 1, mass_g: 25,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.90.03", supplier: "Aerogel Tech" },
    { num: "KESTREL-3.90.04", p: "KESTREL-3.90.00", name: "Heater · OBC stack · 1 W kapton",          qty: 1, mass_g: 30,  power_w: 1.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.90.04", supplier: "Minco Products" },
    { num: "KESTREL-3.90.05", p: "KESTREL-3.90.00", name: "Heater · payload optical bench · 2 W",     qty: 1, mass_g: 35,  power_w: 2.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.90.05", supplier: "Minco Products" },
    { num: "KESTREL-3.90.06", p: "KESTREL-3.90.00", name: "Thermistor · 10K NTC · 8-channel",         qty: 8, mass_g: 8,   power_w: 0.1, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.90.06", supplier: "Vishay" },
    { num: "KESTREL-3.90.07", p: "KESTREL-3.90.00", name: "Thermal strap · pyrolytic graphite",       qty: 2, mass_g: 60,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.90.07", supplier: "TAI Thermal" },
    { num: "KESTREL-3.90.08", p: "KESTREL-3.90.00", name: "Radiator coating · Z93 white paint",       qty: 1, mass_g: 40,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.90.08", supplier: "AZ Technology" },

    // ── L2 · RF deck (A0.xx) ──
    { num: "KESTREL-3.A0.01", p: "KESTREL-3.A0.00", name: "LNA · X-band · 1.2 dB NF",                 qty: 1, mass_g: 65,  power_w: 0.6, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.A0.01", supplier: "L3Harris RF" },
    { num: "KESTREL-3.A0.02", p: "KESTREL-3.A0.00", name: "Diplexer · X-band · low-loss",             qty: 1, mass_g: 80,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.A0.02", supplier: "L3Harris RF" },
    { num: "KESTREL-3.A0.03", p: "KESTREL-3.A0.00", name: "RF deck PCB · 4-layer Ro4350",             qty: 1, mass_g: 55,  power_w: 0.4, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.A0.03", supplier: "L3Harris RF" },
    { num: "KESTREL-3.A0.04", p: "KESTREL-3.A0.00", name: "RF shield can · brazed",                   qty: 1, mass_g: 40,  power_w: 0.0, heritage: "TRL-9",         qual: "qual-passed", part_num: "KESTREL-3.A0.04", supplier: "L3Harris RF" },

    // ── L2 · Payload (B0.xx) ──
    { num: "KESTREL-3.B0.01", p: "KESTREL-3.B0.00", name: "Imager · Simera HyperScape100 1m-GSD",     qty: 1, mass_g: 1850, power_w: 16.0, heritage: "TRL-6",        qual: "engineering-model", part_num: "KESTREL-3.B0.01", supplier: "Simera Sense" },
    { num: "KESTREL-3.B0.02", p: "KESTREL-3.B0.00", name: "Optical bench · Invar-36 + isolators",     qty: 1, mass_g: 580,  power_w: 0.0,  heritage: "TRL-7",        qual: "qual-pending",      part_num: "KESTREL-3.B0.02", supplier: "Aetherion · in-house" },
    { num: "KESTREL-3.B0.03", p: "KESTREL-3.B0.00", name: "Payload data handler · Xilinx Zynq US+",   qty: 1, mass_g: 220,  power_w: 5.0,  heritage: "TRL-7",        qual: "qual-pending",      part_num: "KESTREL-3.B0.03", supplier: "Aetherion · in-house" },
    { num: "KESTREL-3.B0.04", p: "KESTREL-3.B0.00", name: "Baffle · stray-light · black anodize",     qty: 1, mass_g: 240,  power_w: 0.0,  heritage: "TRL-9",        qual: "qual-passed",       part_num: "KESTREL-3.B0.04", supplier: "Aetherion · in-house" },
    { num: "KESTREL-3.B0.05", p: "KESTREL-3.B0.00", name: "X-band TX duplicate · payload-side",       qty: 1, mass_g: 180,  power_w: 3.5,  heritage: "TRL-8",        qual: "qual-passed",       part_num: "KESTREL-3.B0.05", supplier: "Tethers Unlimited" },
    { num: "KESTREL-3.B0.06", p: "KESTREL-3.B0.00", name: "Calibration LED stack · radiometric",      qty: 1, mass_g: 60,   power_w: 0.4,  heritage: "TRL-7",        qual: "qual-pending",      part_num: "KESTREL-3.B0.06", supplier: "Aetherion · in-house" },
    { num: "KESTREL-3.B0.07", p: "KESTREL-3.B0.00", name: "Payload harness · MIL-DTL-38999 short",    qty: 1, mass_g: 90,   power_w: 0.0,  heritage: "TRL-9",        qual: "qual-passed",       part_num: "KESTREL-3.B0.07", supplier: "Glenair / Amphenol" },
    { num: "KESTREL-3.B0.08", p: "KESTREL-3.B0.00", name: "Payload mount bracket · titanium",         qty: 1, mass_g: 50,   power_w: 0.0,  heritage: "TRL-9",        qual: "qual-passed",       part_num: "KESTREL-3.B0.08", supplier: "Aetherion · in-house" },
  ],

  // ── BOM hierarchies ────────────────────────────────────────────────
  boms: [
    {
      sku: "KESTREL-3.00.00",
      title: "Top assembly · KESTREL-3 12U",
      lines: [
        { part_num: "KESTREL-3.10.00", qty: 1, position: "Primary structure"      },
        { part_num: "KESTREL-3.20.00", qty: 1, position: "Avionics OBC + EPS"     },
        { part_num: "KESTREL-3.30.00", qty: 1, position: "ADCS"                   },
        { part_num: "KESTREL-3.40.00", qty: 1, position: "Propulsion"             },
        { part_num: "KESTREL-3.50.00", qty: 1, position: "Comms"                  },
        { part_num: "KESTREL-3.60.00", qty: 1, position: "Solar array"            },
        { part_num: "KESTREL-3.70.00", qty: 1, position: "Battery pack"           },
        { part_num: "KESTREL-3.80.00", qty: 1, position: "Harness"                },
        { part_num: "KESTREL-3.90.00", qty: 1, position: "Thermal"                },
        { part_num: "KESTREL-3.A0.00", qty: 1, position: "RF deck"                },
        { part_num: "KESTREL-3.B0.00", qty: 1, position: "Payload"                },
      ],
    },
    {
      sku: "KESTREL-3.20.00",
      title: "Bus subassembly · Avionics OBC + EPS stack",
      lines: [
        { part_num: "KESTREL-3.20.01", qty: 1,  position: "OBC primary"          },
        { part_num: "KESTREL-3.20.02", qty: 1,  position: "EPS primary"          },
        { part_num: "KESTREL-3.20.03", qty: 1,  position: "PCDU"                 },
        { part_num: "KESTREL-3.20.04", qty: 1,  position: "Mass memory"          },
        { part_num: "KESTREL-3.20.05", qty: 1,  position: "Backplane"            },
        { part_num: "KESTREL-3.20.06", qty: 1,  position: "Watchdog + safe-mode" },
        { part_num: "KESTREL-3.20.07", qty: 1,  position: "Heater driver"        },
        { part_num: "KESTREL-3.20.08", qty: 1,  position: "Telemetry conditioner"},
        { part_num: "KESTREL-3.20.09", qty: 16, position: "M2.5 A286 fasteners"  },
      ],
    },
    {
      sku: "KESTREL-3.B0.00",
      title: "Payload subassembly · 1m-GSD imager + X-band TX",
      lines: [
        { part_num: "KESTREL-3.B0.01", qty: 1, position: "Imager"                },
        { part_num: "KESTREL-3.B0.02", qty: 1, position: "Optical bench"         },
        { part_num: "KESTREL-3.B0.03", qty: 1, position: "Payload data handler"  },
        { part_num: "KESTREL-3.B0.04", qty: 1, position: "Stray-light baffle"    },
        { part_num: "KESTREL-3.B0.05", qty: 1, position: "X-band TX (payload)"   },
        { part_num: "KESTREL-3.B0.06", qty: 1, position: "Calibration LED stack" },
        { part_num: "KESTREL-3.B0.07", qty: 1, position: "Payload harness"       },
        { part_num: "KESTREL-3.B0.08", qty: 1, position: "Mount bracket"         },
      ],
    },
    {
      sku: "KESTREL-3.60.HG",
      title: "Solar-array hinge subassembly · ECO-AET-0042 target",
      lines: [
        { part_num: "KESTREL-3.60.HG.01", qty: 4, position: "Hinge body"         },
        { part_num: "KESTREL-3.60.HG.02", qty: 4, position: "Hinge spring"       },
        { part_num: "KESTREL-3.60.HG.03", qty: 4, position: "Fastener stack (rev B → C)" },
        { part_num: "KESTREL-3.60.HG.04", qty: 4, position: "Burn wire"          },
      ],
    },
  ],

  // ── Routing · 4 stations per spec §8 ──────────────────────────────
  routing: [
    { station: "s1", code: "RECV+INSP",   name: "Receiving + incoming inspection",       cycle_min: 240, wi_ref: "WI-AET-S1-RECV-r3", op_codes: ["OP-S1-01","OP-S1-02","OP-S1-03","OP-S1-04","OP-S1-05"], gates: ["QG-AET-01","QG-AET-02","QG-AET-03","QG-AET-04","QG-AET-05"] },
    { station: "s2", code: "SUBASSY",     name: "Subassembly bench + harness routing",   cycle_min: 1380,wi_ref: "WI-AET-S2-SUBASSY-r2",op_codes: ["OP-S2-01","OP-S2-02","OP-S2-03","OP-S2-04","OP-S2-05","OP-S2-06","OP-S2-07","OP-S2-08","OP-S2-09"], gates: ["QG-AET-06","QG-AET-07","QG-AET-08","QG-AET-09","QG-AET-10","QG-AET-11","QG-AET-12","QG-AET-13","QG-AET-14"] },
    { station: "s3", code: "INTEG+ALIGN", name: "Integration + alignment",               cycle_min: 960, wi_ref: "WI-AET-S3-INTEG-r4", op_codes: ["OP-S3-01","OP-S3-02","OP-S3-03","OP-S3-04","OP-S3-05","OP-S3-06","OP-S3-07"], gates: ["QG-AET-15","QG-AET-16","QG-AET-17","QG-AET-18","QG-AET-19","QG-AET-20","QG-AET-21"] },
    { station: "s4", code: "TEST+ACC",    name: "Test (TVAC + EMI + vibration) → acceptance", cycle_min: 4320, wi_ref: "WI-AET-S4-TEST-r3", op_codes: ["OP-S4-01","OP-S4-02","OP-S4-03","OP-S4-04","OP-S4-05","OP-S4-06","OP-S4-07","OP-S4-08","OP-S4-09"], gates: ["QG-AET-22","QG-AET-23","QG-AET-24","QG-AET-25","QG-AET-26","QG-AET-27","QG-AET-28","QG-AET-29","QG-AET-30"] },
  ],

  // ── Quality gates · 30 gates QG-AET-01..30 (sample of 12 named) ───
  quality_gates: [
    { id: "QG-AET-01", station: "s1", text: "CofC review · all incoming parts · radiation TID certs filed",    spec: "AS9102 rev B" },
    { id: "QG-AET-02", station: "s1", text: "MIL-DTL-38999 connectors N₂ purge ≥ 12 h before mate",            spec: "NASA-STD-8739.4" },
    { id: "QG-AET-05", station: "s1", text: "ESD wrist-strap continuity log on entry · all operators",         spec: "ANSI/ESD S20.20" },
    { id: "QG-AET-08", station: "s2", text: "EPS power-on self-test · all rails ±2% nominal",                  spec: "AAC Clyde IRD-2.4" },
    { id: "QG-AET-11", station: "s2", text: "Harness routing matches HRD-AET-001 · laser-aligned trace board", spec: "HRD-AET-001 rev C" },
    { id: "QG-AET-14", station: "s2", text: "OBC boot to safe-mode · watchdog kick verified",                  spec: "FSW-AET-2.1.0" },
    { id: "QG-AET-17", station: "s3", text: "Star-tracker boresight ≤ 25 µm at 2 m (Leica AT960)",            spec: "ECSS-E-ST-32-08" },
    { id: "QG-AET-20", station: "s3", text: "Solar-array deployment in 4 m vacuum-deploy rig · all 4 wings",   spec: "TP-AET-DEPL-001" },
    { id: "QG-AET-22", station: "s4", text: "TVAC 24 cycles −40 / +85 °C · 90 min ramps · 1e-5 torr",          spec: "ECSS-E-ST-10-03" },
    { id: "QG-AET-25", station: "s4", text: "EMI/EMC per MIL-STD-461G · CE/CS/RE/RS",                          spec: "MIL-STD-461G" },
    { id: "QG-AET-27", station: "s4", text: "Sine + random vibration · GEVS+3 dB envelope",                    spec: "NASA-STD-7001" },
    { id: "QG-AET-30", station: "s4", text: "Mass-properties · CG ± 1 mm · final CofC pass",                   spec: "AS9102 rev B" },
  ],

  // ── Suppliers / sub-suppliers (six per spec §3) ───────────────────
  suppliers: [
    {
      id: "SUP-HONEYBEE", name: "Honeybee Robotics", country: "US", domiciled: "Pasadena, CA",
      role: "Solar-array hinge sub · KESTREL-3.60.HG", heritage: "Mars 2020, ISS, JWST", as9100: true, itar_compliant: true,
      on_time_pct_history: [{ q: "2025Q1", v: 96 }, { q: "2025Q2", v: 94 }, { q: "2025Q3", v: 97 }, { q: "2025Q4", v: 95 }, { q: "2026Q1", v: 92 }],
      qual_file: "SUP-QUAL-HONEYBEE-r3", contact: "supplier-contact-1@honeybee.example",
    },
    {
      id: "SUP-ISIS", name: "ISIS · Innovative Solutions In Space", country: "NL", domiciled: "Delft, NL",
      role: "12U structure base · KESTREL-3.10.01", heritage: "100+ flown cubesat structures", as9100: true, itar_compliant: false,
      on_time_pct_history: [{ q: "2025Q1", v: 88 }, { q: "2025Q2", v: 91 }, { q: "2025Q3", v: 93 }, { q: "2025Q4", v: 90 }, { q: "2026Q1", v: 89 }],
      qual_file: "SUP-QUAL-ISIS-r2", contact: "supplier-contact-1@isispace.example",
    },
    {
      id: "SUP-AAC-CLYDE", name: "AAC Clyde Space", country: "UK", domiciled: "Glasgow, UK",
      role: "Sirius OBC + Starbuck EPS · KESTREL-3.20.01..03", heritage: "ISS-6Y on Sirius variant", as9100: true, itar_compliant: false,
      on_time_pct_history: [{ q: "2025Q1", v: 90 }, { q: "2025Q2", v: 93 }, { q: "2025Q3", v: 95 }, { q: "2025Q4", v: 94 }, { q: "2026Q1", v: 96 }],
      qual_file: "SUP-QUAL-AAC-r4", contact: "supplier-contact-1@aac-clyde.example",
    },
    {
      id: "SUP-SODERN", name: "Sodern", country: "FR", domiciled: "Limeil-Brévannes, FR",
      role: "Auriga CP star tracker · KESTREL-3.30.01", heritage: "200+ ESA flight units", as9100: true, itar_compliant: false,
      on_time_pct_history: [{ q: "2025Q1", v: 85 }, { q: "2025Q2", v: 87 }, { q: "2025Q3", v: 89 }, { q: "2025Q4", v: 91 }, { q: "2026Q1", v: 88 }],
      qual_file: "SUP-QUAL-SODERN-r2", contact: "supplier-contact-1@sodern.example",
    },
    {
      id: "SUP-BCT", name: "Blue Canyon Technologies", country: "US", domiciled: "Boulder, CO",
      role: "RWp050 reaction wheels x3 · KESTREL-3.30.02..04", heritage: "Lucy, MarCO, ISS-6Y", as9100: true, itar_compliant: true,
      on_time_pct_history: [{ q: "2025Q1", v: 92 }, { q: "2025Q2", v: 95 }, { q: "2025Q3", v: 96 }, { q: "2025Q4", v: 95 }, { q: "2026Q1", v: 94 }],
      qual_file: "SUP-QUAL-BCT-r3", contact: "supplier-contact-1@bluecanyon.example",
    },
    {
      id: "SUP-GLENAIR", name: "Glenair / Amphenol", country: "US", domiciled: "Glendale, CA",
      role: "MIL-DTL-38999 series III + overbraid · KESTREL-3.80.*", heritage: "Apollo to ISS, every flight bus", as9100: true, itar_compliant: true,
      on_time_pct_history: [{ q: "2025Q1", v: 98 }, { q: "2025Q2", v: 97 }, { q: "2025Q3", v: 99 }, { q: "2025Q4", v: 98 }, { q: "2026Q1", v: 97 }],
      qual_file: "SUP-QUAL-GLENAIR-r5", contact: "supplier-contact-1@glenair.example",
    },
  ],

  // ── Customer record · Aperture Earth Analytics ────────────────────
  customer: {
    id: "CUST-APE-EARTH",
    name: "Aperture Earth Analytics",
    location: "Lincoln, NE · US-domiciled",
    relationship: "Single-flight FFP · LOI 2025-01-12",
    sector: "Precision-ag + crop-insurance contractor",
    employees_approx: 80,
    public_press: false,
    sla: {
      acceptance_target: "2026-07-15",
      launch_target: "2026-09-10",
      warranty_months_on_orbit: 12,
      data_latency_target_min: 90,
    },
    contacts: [
      { role: "VP — Engineering",       name: "Aperture — Engineering Lead",   email: "engineering@aperture-earth.example" },
      { role: "Mission Director",       name: "Aperture — Mission Director",   email: "missions@aperture-earth.example"   },
      { role: "Head — Procurement",     name: "Aperture — Procurement Lead",   email: "procurement@aperture-earth.example"},
    ],
    relationship_started: "2025-01",
    contract_value_usd: 4200000,
  },

  // ── Work orders / qualification campaigns ─────────────────────────
  work_orders: [
    {
      id: "WO-AET-001", sku: "KESTREL-3.00.00", customer: "Aperture Earth Analytics", qty: 1,
      status: "in-progress", scheduled_start: "2026-02-01", scheduled_end: "2026-07-15",
      title: "Flight unit FAB + I&T · KESTREL-3 SN-001",
      campaign: "FAB-A complete; FAB-B re-issue 4 hinges in flight",
      station_progress: { s1: 1.0, s2: 0.95, s3: 0.78, s4: 0.42 },
      serial_pool_prefix: "KST3-",
    },
    {
      id: "WO-AET-002", sku: "KESTREL-3.B0.00", customer: "Aetherion · payload integ", qty: 1,
      status: "in-progress", scheduled_start: "2026-03-10", scheduled_end: "2026-06-20",
      title: "Payload optical bench integration + radiometric cal",
      campaign: "Optical bench + imager · Invar lock cycle",
      station_progress: { s1: 1.0, s2: 1.0, s3: 0.6, s4: 0 },
      serial_pool_prefix: "PL-AET-",
    },
    {
      id: "WO-AET-003", sku: "KESTREL-3.60.HG", customer: "Honeybee Robotics", qty: 4,
      status: "rework", scheduled_start: "2026-05-05", scheduled_end: "2026-05-22",
      title: "Hinge re-build · ECO-AET-0042 (A2-70 → A286 + Belleville)",
      campaign: "FAB-B hinge subassembly re-issue · 4× hinge re-build",
      station_progress: { s1: 1.0, s2: 0.75, s3: 0, s4: 0 },
      serial_pool_prefix: "HG-AET-",
    },
    {
      id: "WO-AET-004", sku: "QUAL-CAMPAIGN", customer: "Aetherion · qual", qty: 1,
      status: "in-progress", scheduled_start: "2026-04-15", scheduled_end: "2026-06-30",
      title: "TVAC + EMI + vibration + shock + radiation TID qual campaign",
      campaign: "TVAC-AET-014 partial fail · TVAC-AET-014R re-test scheduled 2026-05-28",
      station_progress: { s1: 1.0, s2: 1.0, s3: 1.0, s4: 0.55 },
      serial_pool_prefix: "QC-AET-",
    },
    {
      id: "WO-AET-005", sku: "KESTREL-3.40.00", customer: "VACCO Industries", qty: 1,
      status: "scheduled", scheduled_start: "2026-05-20", scheduled_end: "2026-06-15",
      title: "Cold-gas propulsion qual · pressure cycle + leak rate",
      campaign: "Helium leak ≤ 1e-6 sccs · 60 bar proof + 30 bar ops",
      station_progress: { s1: 0, s2: 0, s3: 0, s4: 0 },
      serial_pool_prefix: "PROP-AET-",
    },
  ],

  // ── In-flight unit travelers · 6 across 4 stations ───────────────
  travelers: [
    { serial: "KST3-FU-001", wo: "WO-AET-001", current_station: "s4", completed_stations: ["s1","s2","s3"], dimensions: { boresight_um: 22.4, cg_offset_mm: 0.6, mass_g: 12460 }, photos: ["/photos/KST3-FU-001-tvac.jpg","/photos/KST3-FU-001-shaker.jpg"], status: "hold", hold_reason: "Pending TVAC-AET-014R partial re-test post ECO-AET-0042" },
    { serial: "KST3-EM-002", wo: "WO-AET-002", current_station: "s3", completed_stations: ["s1","s2"], dimensions: { boresight_um: 18.1, cg_offset_mm: 0.4, mass_g: 3270 }, photos: ["/photos/KST3-EM-002-bench.jpg"], status: "ok" },
    { serial: "HG-AET-001", wo: "WO-AET-003", current_station: "s2", completed_stations: ["s1"], dimensions: { torque_nm: 0.55, preload_n: 1820 }, photos: ["/photos/HG-AET-001-rev-C.jpg"], status: "ok" },
    { serial: "HG-AET-002", wo: "WO-AET-003", current_station: "s2", completed_stations: ["s1"], dimensions: { torque_nm: 0.54, preload_n: 1810 }, photos: ["/photos/HG-AET-002-rev-C.jpg"], status: "ok" },
    { serial: "HG-AET-003", wo: "WO-AET-003", current_station: "s2", completed_stations: ["s1"], dimensions: { torque_nm: 0.55, preload_n: 1825 }, photos: [], status: "ok" },
    { serial: "HG-AET-004", wo: "WO-AET-003", current_station: "s1", completed_stations: [], dimensions: {}, photos: [], status: "ok" },
  ],

  // ── ECOs · ECO-AET-0042 hero + 3 lower-sev ────────────────────────
  eco: [
    {
      id: "ECO-AET-0042",
      title: "Solar-array hinge fastener · A2-70 → A286 + Belleville stack",
      target_pn: "KESTREL-3.60.HG.03",
      target_rev: "B → C",
      severity: "critical",
      state: "board-review",
      originator: "M. Sato · Mech Lead",
      date_raised: "2026-04-24",
      date_target_close: "2026-05-12",
      gate: "single-point gate to launch",
      trigger: "TVAC-AET-014 cycle 14 of 24 · 50 µm pre-load loss on hinge HG-03 · post-run torque 0.42 Nm vs spec 0.55 ± 0.05 Nm",
      root_cause: "M3 A2-70 fastener + single Nord-Lock washer (selected at PDR for cost) fatigues at −40 °C. PDR Belleville modeling covered 25-cycle envelope; flight profile is 60 BOL + 200 operational.",
      change: "Replace M3 A2-70 with M3 A286 stainless (DIN EN 2516). Replace Nord-Lock with 4× DIN 2093 Belleville stack (HHHL pattern, series-parallel). Vibra-Tite 213 at torque, 24 h cure, re-torque audit at +1 day.",
      mass_impact_g: 9.6, // +2.4 g per hinge × 4
      mass_margin_before_pct: 11.0,
      mass_margin_after_pct: 10.93,
      schedule_impact_days: 11, // FAB-B re-issue 5d + TVAC re-test 4d + CofC 2d
      acc_slip_from: "2026-07-04",
      acc_slip_to: "2026-07-15",
      launch_holds: true,
      retest_plan: "TVAC-AET-014R · 24 cycles −40 / +85 °C · 90 min ramps · strain-gauge + torque audit at cycle 24. Plus shock-survival 2000g half-sine 0.5 ms.",
      compliance_refs: ["AS9100 8.7", "AS9100 8.5.1.3", "ECSS-E-ST-32-08"],
      itar: true,
      approval_chain: [
        { role: "Originator",       name: "M. Sato",   at: "2026-04-24", status: "approved" },
        { role: "Mech CCB",         name: "Mech CCB",  at: "2026-05-02", status: "approved" },
        { role: "Q&MA",             name: "Q&MA Lead", at: "2026-05-04", status: "approved" },
        { role: "Mission Director", name: "M. Director", at: null,        status: "pending"  },
      ],
      customer_ack: { date: "2026-05-06", method: "email · CR-2026-014 to be filed at MD sign" },
    },
    {
      id: "ECO-AET-0038",
      title: "EPS rail nominal trim · +5 V → +5.05 V regulator setpoint",
      target_pn: "KESTREL-3.20.02",
      target_rev: "A → B",
      severity: "minor",
      state: "approved",
      originator: "AAC Clyde liaison",
      date_raised: "2026-02-10",
      date_target_close: "2026-02-28",
      trigger: "Bus brown-out margin tight at end-of-discharge during eclipse model",
      change: "Trim Starbuck Nano EPS +5 V rail to +5.05 V via potentiometer R47 · re-cal MSV records",
      mass_impact_g: 0,
      schedule_impact_days: 0,
      compliance_refs: ["AS9100 8.7"],
      itar: false,
      approval_chain: [
        { role: "Originator",       name: "AAC liaison", at: "2026-02-10", status: "approved" },
        { role: "Avionics Lead",    name: "K. Patel",    at: "2026-02-14", status: "approved" },
        { role: "Mission Director", name: "M. Director", at: "2026-02-28", status: "approved" },
      ],
    },
    {
      id: "ECO-AET-0040",
      title: "MLI blanket pattern revision · top-deck cutout for star-tracker",
      target_pn: "KESTREL-3.90.01",
      target_rev: "C → D",
      severity: "minor",
      state: "approved",
      originator: "Thermal eng",
      date_raised: "2026-03-22",
      date_target_close: "2026-04-08",
      trigger: "Star-tracker FOV grazing MLI seam at +Z elevation during commissioning",
      change: "Re-cut top-deck MLI with 12 mm clear corridor along star-tracker boresight · re-tape edges Kapton 5413",
      mass_impact_g: -3.2,
      schedule_impact_days: 2,
      compliance_refs: ["ECSS-Q-ST-70"],
      itar: false,
      approval_chain: [
        { role: "Originator",       name: "Thermal eng",  at: "2026-03-22", status: "approved" },
        { role: "Mech CCB",         name: "Mech CCB",     at: "2026-04-02", status: "approved" },
        { role: "Mission Director", name: "M. Director",  at: "2026-04-08", status: "approved" },
      ],
    },
    {
      id: "ECO-AET-0041",
      title: "FSW patch · safe-mode entry threshold tightened",
      target_pn: "KESTREL-3.20.01",
      target_rev: "FSW 2.1.0 → 2.1.1",
      severity: "minor",
      state: "approved",
      originator: "FSW eng",
      date_raised: "2026-04-05",
      date_target_close: "2026-04-18",
      trigger: "Safe-mode entry oscillated during eclipse-egress model on hardware-in-loop bench",
      change: "Tighten battery V threshold from 6.4 V → 6.6 V; increase debounce from 4 s → 12 s. Patch FSW-AET-2.1.1 published.",
      mass_impact_g: 0,
      schedule_impact_days: 0,
      compliance_refs: ["AS9100 8.3.4"],
      itar: false,
      approval_chain: [
        { role: "Originator",       name: "FSW eng",      at: "2026-04-05", status: "approved" },
        { role: "Avionics Lead",    name: "K. Patel",     at: "2026-04-12", status: "approved" },
        { role: "Mission Director", name: "M. Director",  at: "2026-04-18", status: "approved" },
      ],
    },
  ],

  // ── NCRs ──────────────────────────────────────────────────────────
  ncrs: [
    { id: "NCR-AET-019", date: "2026-04-22", severity: "critical", linked_eco: "ECO-AET-0042", part_num: "KESTREL-3.60.HG.03", description: "Hinge fastener pre-load loss 50 µm at TVAC cycle 14/24; torque audit 0.42 Nm vs spec 0.55 ± 0.05 Nm", status: "open · in ECO board review" },
    { id: "NCR-AET-018", date: "2026-04-08", severity: "minor",    linked_eco: null,            part_num: "KESTREL-3.90.01", description: "MLI seam at top-deck grazes star-tracker FOV at +Z elevation in commissioning model", status: "closed via ECO-AET-0040" },
  ],

  // ── Waivers ───────────────────────────────────────────────────────
  waivers: [
    { id: "WAIVER-AET-005", date: "2026-04-26", target: "KESTREL-3.60.HG", description: "Single-point hinge inspection waiver pending ECO-AET-0042 close · 100% torque audit at +1 day", state: "approved", expires: "2026-07-15" },
    { id: "WAIVER-AET-003", date: "2026-01-15", target: "KESTREL-3.40.04", description: "Cold-gas thruster TRL-6 carry to qual · ECSS-E-ST-10-03 deviation noted", state: "approved", expires: "2026-08-01" },
  ],

  // ── Compliance · ITAR / AS9100 / ECSS pointers ────────────────────
  compliance: {
    itar: {
      data_plane: "aetherion-itar",
      us_persons_only: true,
      us_domiciled_s3: true,
      mcp_egress_blocked: true,
      ai_call_egress_blocked: true,
      route_flag: "itar=true on every traveler:// and ledger:// request",
      bom_render_rule: "non-US persons see mass + power (EAR99); qual + heritage hidden",
      export_record_count: 14,
    },
    as9100: [
      { clause: "8.1.1",    name: "Operational risk management",            artifact: "FMEA register · FMEA-AET-2026-r4" },
      { clause: "8.3.4",    name: "Design verification + validation",       artifact: "DV&V matrix · DVV-AET-2026" },
      { clause: "8.4.3",    name: "Supplier control",                       artifact: "Sub-supplier qual files · Honeybee, ISIS, AAC Clyde, Sodern, BCT, Glenair" },
      { clause: "8.5.1.3",  name: "Production process verification (FAI)",  artifact: "FAI per AS9102 rev B · 41 reports filed" },
      { clause: "8.7",      name: "Nonconformity output control",           artifact: "NCR + waiver register · NCR-AET-001..019" },
      { clause: "9.2",      name: "Internal audit · quarterly cadence",     artifact: "INT-AUD-2026-Q1 closed; Q2 in flight" },
    ],
    ecss: [
      { spec: "ECSS-E-ST-10-03", name: "Environmental test (vibration, shock, TVAC, EMC)", status: "in-flight" },
      { spec: "ECSS-Q-ST-70",    name: "EEE parts derating",                                status: "compliant" },
      { spec: "ECSS-Q-ST-70-08", name: "Manual soldering of high-rel",                       status: "compliant" },
      { spec: "ECSS-E-ST-32-08", name: "Mechanical part stress",                             status: "compliant" },
      { spec: "ECSS-E-ST-10-04", name: "Radiation TID · LEO profile",                        status: "in-flight" },
    ],
    qualification_artefacts: [
      { artifact: "Mech qual report (sine + random vib · GEVS or NASA-STD-7001)", status: "in-flight",  due: "2026-06-15" },
      { artifact: "EMI / EMC report (MIL-STD-461G CE/CS/RE/RS)",                  status: "scheduled",  due: "2026-06-22" },
      { artifact: "Radiation TID report (≥30 krad Si TID + DD per ECSS LEO)",     status: "in-flight",  due: "2026-06-30" },
      { artifact: "Vibration report (Falcon 9 user guide + 3 dB margin)",         status: "scheduled",  due: "2026-06-28" },
      { artifact: "Shock report (pyroshock 2000g half-sine)",                     status: "scheduled",  due: "2026-07-02" },
      { artifact: "TVAC report (24 cycles −40 / +85 °C · 1e-5 torr)",             status: "in-flight",  due: "2026-06-05" },
      { artifact: "Cleanroom log (Class 7 · ISO 14644-2 monthly)",                status: "compliant",  due: "rolling"    },
    ],
    cleanroom: { class_iso: 7, standard: "ISO 14644-1", verification: "monthly per ISO 14644-2", entry_log: "EL-AET-2026-roll" },
  },

  // ── Signed event ledger · 22 events from spec §9 ──────────────────
  // ISO-8601 Zulu. event_id increments. ref_hash is the hash-chain link
  // (sha256-style hex prefix); each receipt's prev_hash equals the prior
  // receipt's ref_hash.
  ledger: [
    { event_id: "L-0001", ts: "2024-12-08T11:42Z", type: "RFQ_RECEIVED",          mode: "forge", actor: "Sales eng",  summary: "Aperture Earth RFQ for 12U EO bus · 1m-GSD X-band downlink", ref: "RFQ-APE-2024-08",  prev_hash: "0000000000000000",                          ref_hash: "a1b9d402c7e83610" },
    { event_id: "L-0002", ts: "2025-01-12T15:30Z", type: "LOI_SIGNED",            mode: "forge", actor: "Sales eng",  summary: "Aperture Earth LOI signed · $4.2M FFP · single-flight 12U", ref: "LOI-APE-2025-01",  prev_hash: "a1b9d402c7e83610",                          ref_hash: "b22c1d4f0a7e8b51" },
    { event_id: "L-0003", ts: "2025-01-30T09:15Z", type: "MISSION_BASELINED",    mode: "forge", actor: "M. Sato",     summary: "KESTREL-3 mission baseline rev A locked · 525 km sun-sync", ref: "MB-KST3-rA",       prev_hash: "b22c1d4f0a7e8b51",                          ref_hash: "c8f0e2531492af07" },
    { event_id: "L-0004", ts: "2025-03-04T17:00Z", type: "SRR_CLOSED",            mode: "forge", actor: "M. Director", summary: "SRR review passed · 7 actions tracked",                     ref: "SRR-KST3-2025-03", prev_hash: "c8f0e2531492af07",                          ref_hash: "d5117a6e08bc9342" },
    { event_id: "L-0005", ts: "2025-03-18T10:20Z", type: "MASS_BUDGET_LOCKED",    mode: "forge", actor: "M. Sato",     summary: "Mass budget 14.0 kg cap · margin policy 10% · current 12.46 kg", ref: "MB-MASS-rA",     prev_hash: "d5117a6e08bc9342",                          ref_hash: "e3a8c19f4b22057c" },
    { event_id: "L-0006", ts: "2025-03-21T14:05Z", type: "POWER_BUDGET_LOCKED",   mode: "forge", actor: "K. Patel",    summary: "Power budget 70 W BOL · margin policy 5 W · current 8 W",   ref: "MB-POWER-rA",      prev_hash: "e3a8c19f4b22057c",                          ref_hash: "f70d4e8b15c93a82" },
    { event_id: "L-0007", ts: "2025-06-18T16:30Z", type: "PDR_CLOSED",            mode: "forge", actor: "M. Director", summary: "PDR passed · propulsion trade study attached · 0 critical actions", ref: "PDR-KST3-2025-06", prev_hash: "f70d4e8b15c93a82",                  ref_hash: "0a82fc9e35d18be6" },
    { event_id: "L-0008", ts: "2025-06-25T12:00Z", type: "PROPULSION_TRADE_DONE", mode: "forge", actor: "Prop eng",    summary: "Cold-gas R-236fa selected over Hall thruster · TRL-7 path",  ref: "TRADE-PROP-2025",  prev_hash: "0a82fc9e35d18be6",                          ref_hash: "1bc4e9f725083ad1" },
    { event_id: "L-0009", ts: "2025-10-22T18:15Z", type: "CDR_CLOSED",            mode: "forge", actor: "M. Director", summary: "CDR passed · mass margin 11.4% · power margin 9 W BOL",     ref: "CDR-KST3-2025-10", prev_hash: "1bc4e9f725083ad1",                          ref_hash: "2cd75308946be9f7" },
    { event_id: "L-0010", ts: "2025-11-05T09:45Z", type: "SUPPLIER_QUALIFIED",    mode: "forge", actor: "Q&MA Lead",   summary: "Honeybee + ISIS + AAC Clyde + BCT cleared at PDR · SUP-QUAL-* filed", ref: "SUP-QUAL-PDR-2025", prev_hash: "2cd75308946be9f7",                  ref_hash: "3de86419a57cfa08" },
    { event_id: "L-0011", ts: "2026-02-01T08:30Z", type: "FAB_RELEASED",          mode: "forge", actor: "M. Sato",     summary: "FAB-A WO-AET-001 released · structure + harness on bench",  ref: "WO-AET-001",       prev_hash: "3de86419a57cfa08",                          ref_hash: "4ef9752ab68d0b19" },
    { event_id: "L-0012", ts: "2026-04-18T07:00Z", type: "TVAC_TEST_RUN",         mode: "forge", actor: "Test eng",    summary: "TVAC-AET-014 run on integrated vehicle · 24 cycles −40 / +85 °C", ref: "TVAC-AET-014",   prev_hash: "4ef9752ab68d0b19",                          ref_hash: "500a8631c79e1c2a" },
    { event_id: "L-0013", ts: "2026-04-22T13:42Z", type: "NCR_LOGGED",            mode: "forge", actor: "Q&MA Lead",   summary: "NCR-AET-019 hinge fastener pre-load loss 50 µm at cycle 14/24", ref: "NCR-AET-019",      prev_hash: "500a8631c79e1c2a",                          ref_hash: "611b9742d8af2d3b" },
    { event_id: "L-0014", ts: "2026-04-24T10:30Z", type: "ECO_RAISED",            mode: "forge", actor: "M. Sato",     summary: "ECO-AET-0042 raised against KESTREL-3.60.HG.03 · A2-70 → A286", ref: "ECO-AET-0042",     prev_hash: "611b9742d8af2d3b",                          ref_hash: "722ca853e9b03e4c" },
    { event_id: "L-0015", ts: "2026-04-26T15:20Z", type: "WAIVER_GRANTED",        mode: "forge", actor: "Q&MA Lead",   summary: "WAIVER-AET-005 granted · single-point hinge 100% torque audit", ref: "WAIVER-AET-005",   prev_hash: "722ca853e9b03e4c",                          ref_hash: "833db964f0c14f5d" },
    { event_id: "L-0016", ts: "2026-05-02T11:00Z", type: "ECO_BOARD_REVIEW",      mode: "forge", actor: "Mech CCB",    summary: "Mech CCB signed ECO-AET-0042 · pending Q&MA + Mission Director", ref: "ECO-AET-0042",   prev_hash: "833db964f0c14f5d",                          ref_hash: "944eca7501d2506e" },
    { event_id: "L-0017", ts: "2026-05-04T14:15Z", type: "ECO_BOARD_REVIEW",      mode: "forge", actor: "Q&MA Lead",   summary: "Q&MA signed ECO-AET-0042 · pending Mission Director sign-off",  ref: "ECO-AET-0042",     prev_hash: "944eca7501d2506e",                          ref_hash: "a55fdb86120e617f" },
    { event_id: "L-0018", ts: "2026-05-05T07:50Z", type: "ITAR_EXPORT_RECORDED",  mode: "forge", actor: "Export ctrl", summary: "ITAR-controlled drawing pull logged for FAB-B hinge re-build",  ref: "ITAR-EXP-2026-014",prev_hash: "a55fdb86120e617f",                          ref_hash: "b6601c97231f7280" },
    { event_id: "L-0019", ts: "2026-05-06T09:25Z", type: "QUAL_PASSED",           mode: "forge", actor: "Test eng",    summary: "Vibration qual at GEVS+3 dB envelope passed · sine + random",  ref: "QUAL-VIB-AET-2026",prev_hash: "b6601c97231f7280",                          ref_hash: "c7712da8342f8391" },
    { event_id: "L-0020", ts: "2026-05-08T13:10Z", type: "EMC_PASSED",            mode: "forge", actor: "Test eng",    summary: "EMI / EMC per MIL-STD-461G passed · CE/CS/RE/RS",              ref: "EMC-AET-2026-05",  prev_hash: "c7712da8342f8391",                          ref_hash: "d8823eb945308502" },
    { event_id: "L-0021", ts: "2026-07-15T17:00Z", type: "ACC_PASSED",            mode: "forge", actor: "M. Director", summary: "Flight acceptance signed by Mission Director · CofC issued",   ref: "ACC-KST3-2026-07", prev_hash: "d8823eb945308502", target_event: true,      ref_hash: "e9934fca56419613" },
    { event_id: "L-0022", ts: "2026-07-22T10:00Z", type: "CUSTOMER_ACCEPTED",     mode: "forge", actor: "Sales eng",   summary: "Aperture Earth pre-launch sign-off · CR-2026-014 closed",      ref: "ACC-APE-2026-07",  prev_hash: "e9934fca56419613", target_event: true,      ref_hash: "fa04510b67520724" },
    { event_id: "L-0023", ts: "2026-09-10T08:00Z", type: "LAUNCH_MANIFEST_LOCKED",mode: "forge", actor: "M. Director", summary: "Falcon 9 Transporter-15 manifest confirmed · KESTREL-3 SN-001", ref: "LAUNCH-T15-2026",  prev_hash: "fa04510b67520724", target_event: true,      ref_hash: "0b15621c78631835" },
  ],

  // ── People · Aetherion team ───────────────────────────────────────
  people: [
    { id: "P-AET-01", name: "M. Sato",      role: "Mech Lead · Mission Director designate (acting)", station: "—",  us_person: true  },
    { id: "P-AET-02", name: "K. Patel",     role: "Avionics Lead · OBC + EPS owner",                  station: "s2", us_person: true  },
    { id: "P-AET-03", name: "L. Chen",      role: "Payload Lead · imager + optical bench",            station: "s3", us_person: true  },
    { id: "P-AET-04", name: "R. Okafor",    role: "ADCS / GN&C Lead",                                 station: "s3", us_person: true  },
    { id: "P-AET-05", name: "J. Miller",    role: "Test eng · TVAC + EMI + vibration",                station: "s4", us_person: true  },
    { id: "P-AET-06", name: "S. Hoffmann",  role: "Q&MA Lead · AS9100 + ECSS",                        station: "—",  us_person: true  },
    { id: "P-AET-07", name: "T. Yamamoto",  role: "Cleanroom + Receiving Lead",                       station: "s1", us_person: true  },
    { id: "P-AET-08", name: "A. Volkov",    role: "Export Control · ITAR officer",                    station: "—",  us_person: true  },
  ],

  // ── Documents (ITAR / AS9100 references) ─────────────────────────
  documents: [
    { id: "DOC-AET-001", title: "KESTREL-3 SRR package",                   rev: "A", date: "2025-03-04", itar: true,  classification: "ITAR controlled" },
    { id: "DOC-AET-014", title: "KESTREL-3 PDR package",                   rev: "A", date: "2025-06-18", itar: true,  classification: "ITAR controlled" },
    { id: "DOC-AET-029", title: "KESTREL-3 CDR package",                   rev: "A", date: "2025-10-22", itar: true,  classification: "ITAR controlled" },
    { id: "DOC-AET-041", title: "FMEA register · FMEA-AET-2026-r4",         rev: "r4",date: "2026-04-30", itar: true,  classification: "ITAR controlled" },
    { id: "DOC-AET-052", title: "Sub-supplier qual file · Honeybee",        rev: "r3",date: "2026-02-15", itar: true,  classification: "ITAR controlled" },
    { id: "DOC-AET-053", title: "Sub-supplier qual file · ISIS",            rev: "r2",date: "2026-02-15", itar: false, classification: "EAR99" },
    { id: "DOC-AET-061", title: "DV&V matrix · DVV-AET-2026",               rev: "r2",date: "2026-03-20", itar: true,  classification: "ITAR controlled" },
    { id: "DOC-AET-074", title: "Cleanroom entry log EL-AET-2026-roll",     rev: "rolling",date: "2026-05-09", itar: false, classification: "EAR99" },
  ],

  // ── Onboarding card metadata · used by spec §11 ──────────────────
  onboarding: {
    id: "aetherion-space",
    label: "Rockets · Space program",
    tagline: "Mission-class hardware, shipped on a fixed-price clock",
    examples: "12U cubesat · X-band downlink · sun-sync LEO 525 km",
    icon: "Satellite",
    color: "var(--space-accent)",
    chars: [
      "Aetherion Microsat tenant — KESTREL-3 12U bus, $4.2M FFP for Aperture Earth",
      "11 subassemblies wired to flight heritage (TRL-9 Honeybee hinges, AAC Clyde OBC)",
      "9-gate lifecycle SRR → PDR → CDR → FAB → ASSY → I&T → TVAC → ACC → LAUNCH",
      "Live ECO-AET-0042 against the solar-array hinge after TVAC chatter",
      "ITAR-aware ledger and AS9100 / ECSS-Q-ST-70 quality gates wired in",
    ],
    defaultModules: ["ebom","mbom","eco","plc","gantt","traveler","auditor","docs","people","analytics"],
    bomExtra: ["Mass (g)","Power (W)","Heritage","Qual"],
    bomTagPreviews: ["MASS 14kg","POWER 32W","HERITAGE TRL-9"],
    cta: "Configure Forge for Space programs →",
    isDemoBypass: true,
  },

  // ── Telemetry sample (KPI strip backing data) ─────────────────────
  telemetry: {
    uplink_p95_ms: 112,
    downlink_x_band_mbps: 50,
    safe_mode_entries_30d: 0,
    tvac_cycles_complete: 14,
    tvac_cycles_target: 24,
    qual_tests_pass: 118,
    qual_tests_total: 126,
  },

  // ── Field returns / on-orbit anomalies (none yet · pre-flight) ────
  field_returns: [],

  // ── Aftermarket / spares (post-launch ground support) ─────────────
  aftermarket: [
    { sku: "GS-CONN-38999",    name: "Spare MIL-DTL-38999 III · ground support", mrp_usd: 240 },
    { sku: "GS-MLI-PATCH",     name: "MLI repair kit · ground use",              mrp_usd: 95  },
    { sku: "GS-CABLE-X-1.5M",  name: "X-band coax · 1.5 m · ground patch",       mrp_usd: 320 },
  ],
};

// expose to global scope (Babel-standalone pattern · attach to window)
if (typeof window !== "undefined") {
  window.AETHERION_TENANT = AETHERION_TENANT;
}
