{
  "schema_version": "1.0",
  "generated_at": "2026-10-17T01:40:50.935939+00:00",
  "cutoff_date": "2026-10-17",
  "status": "pass_with_warnings",
  "read_only_inputs": true,
  "exact_final_components": [
    "asml_equipment",
    "process_packaging",
    "dram_hbm",
    "nand_storage",
    "euv_users",
    "china_memory",
    "finance_capex",
    "equipment_market"
  ],
  "input_manifest": [
    {
      "file": "research/asml_equipment.json",
      "sha256": "f09a86e95c255a02246b3d7436a2fa9ba761603d66c3f7a7674700816f0d1ccc",
      "source_count": 24,
      "observation_count": 205
    },
    {
      "file": "research/process_packaging.json",
      "sha256": "97b6620a0183a8434b73078c538e28d77f9aab2f2fc94655deef6e8e56767817",
      "source_count": 22,
      "observation_count": 150
    },
    {
      "file": "research/dram_hbm.json",
      "sha256": "c7045d0bce3662456089fa54b062189236c25489c773364e7bdb19f116ee0f75",
      "source_count": 39,
      "observation_count": 145
    },
    {
      "file": "research/nand_storage.json",
      "sha256": "e08cdc3c2399aa40a28f491e01705a8b737c25412d2533abb1e240665afb5016",
      "source_count": 55,
      "observation_count": 113
    },
    {
      "file": "research/euv_users.json",
      "sha256": "cda8c3c6984d44bb6b619c985032d41845a1b7a485d5f442ded2c4245c47ed60",
      "source_count": 38,
      "observation_count": 52
    },
    {
      "file": "research/china_memory.json",
      "sha256": "d6c920acae5a7a9236d3e4242b44dc53d6c31edd3c78c33779324cf128a62a41",
      "source_count": 10,
      "observation_count": 35
    },
    {
      "file": "research/finance_capex.json",
      "sha256": "f1951606109a3e82b830c378bb316e3930f11236a362aa60f97a909ff68f03ba",
      "source_count": 26,
      "observation_count": 104
    },
    {
      "file": "research/equipment_market.json",
      "sha256": "18f97d3edda46efb88f7e3eec256ef8c52a821945e141be9ca003e4047d128f7",
      "source_count": 5,
      "observation_count": 80
    }
  ],
  "summary": {
    "component_count": 8,
    "sources": 219,
    "observations": 884,
    "inequality_threshold_rows": 26,
    "unique_source_ids": 219,
    "error_count": 0,
    "warning_categories": 5,
    "warning_instances": 41
  },
  "check_summary": {
    "asml_euv_expected_values": {
      "passed": 2,
      "failed": 0
    },
    "asml_euv_nonadditive_roles": {
      "passed": 2,
      "failed": 0
    },
    "asml_euv_subtypes_reconcile": {
      "passed": 2,
      "failed": 0
    },
    "asml_metrology_scope_reconciles": {
      "passed": 9,
      "failed": 0
    },
    "asml_new_used_reconcile": {
      "passed": 17,
      "failed": 0
    },
    "asml_series_unique": {
      "passed": 150,
      "failed": 0
    },
    "asml_technology_mix_reconciles": {
      "passed": 15,
      "failed": 0
    },
    "bounds_ordered": {
      "passed": 5,
      "failed": 0
    },
    "company_foreign_key": {
      "passed": 884,
      "failed": 0
    },
    "component_top_level": {
      "passed": 8,
      "failed": 0
    },
    "date_format": {
      "passed": 639,
      "failed": 0
    },
    "discrete_set_preserved": {
      "passed": 3,
      "failed": 0
    },
    "exact_observation_not_duplicated": {
      "passed": 884,
      "failed": 0
    },
    "finance_metric_sign": {
      "passed": 101,
      "failed": 0
    },
    "finance_net_capex_numeric": {
      "passed": 3,
      "failed": 0
    },
    "finite_numeric_or_null": {
      "passed": 2652,
      "failed": 0
    },
    "inequality_has_threshold": {
      "passed": 26,
      "failed": 0
    },
    "input_stable_during_validation": {
      "passed": 8,
      "failed": 0
    },
    "native_comparator_known": {
      "passed": 884,
      "failed": 0
    },
    "native_status_known": {
      "passed": 884,
      "failed": 0
    },
    "nonnegative_physical_level": {
      "passed": 230,
      "failed": 0
    },
    "null_has_qualitative_evidence": {
      "passed": 154,
      "failed": 0
    },
    "observation_required_fields": {
      "passed": 884,
      "failed": 0
    },
    "observation_source_date_matches": {
      "passed": 205,
      "failed": 0
    },
    "publication_before_retrieval": {
      "passed": 189,
      "failed": 0
    },
    "range_has_bounds_and_no_point": {
      "passed": 3,
      "failed": 0
    },
    "samsung_ds_subset_not_exceed_total": {
      "passed": 10,
      "failed": 0
    },
    "semi_regional_sum_with_rounding": {
      "passed": 10,
      "failed": 0
    },
    "semi_regions_complete": {
      "passed": 10,
      "failed": 0
    },
    "semi_world_total_unique": {
      "passed": 10,
      "failed": 0
    },
    "share_between_zero_and_100": {
      "passed": 127,
      "failed": 0
    },
    "source_cutoff": {
      "passed": 615,
      "failed": 0
    },
    "source_foreign_key": {
      "passed": 884,
      "failed": 0
    },
    "source_id_no_cross_file_collision": {
      "passed": 219,
      "failed": 0
    },
    "source_id_present": {
      "passed": 219,
      "failed": 0
    },
    "source_id_unique_local": {
      "passed": 219,
      "failed": 0
    },
    "source_retrieval_date_present": {
      "passed": 219,
      "failed": 0
    },
    "source_url_present": {
      "passed": 219,
      "failed": 0
    },
    "tsmc_native_finance_unit": {
      "passed": 65,
      "failed": 0
    }
  },
  "errors": [],
  "warnings": [
    {
      "code": "discrete_options_not_interval",
      "message": "Min/max summarize a discrete option set; never interpolate the range or calculate a midpoint.",
      "count": 3,
      "examples": [
        {
          "file": "china_memory.json",
          "observation_index_1based": 13,
          "company_id": "cxmt",
          "metric": "die_density_range",
          "period": "2025-10-28",
          "source_id": "CNE003"
        },
        {
          "file": "china_memory.json",
          "observation_index_1based": 14,
          "company_id": "cxmt",
          "metric": "package_capacity_options",
          "period": "2025-10-28",
          "source_id": "CNE003"
        },
        {
          "file": "china_memory.json",
          "observation_index_1based": 18,
          "company_id": "cxmt",
          "metric": "displayed_module_form_factors",
          "period": "2025-11-23",
          "source_id": "CNE004"
        }
      ]
    },
    {
      "code": "forecast_only_in_secondary_notes",
      "message": "Secondary row contains a forecast/plan in prose. Downstream code must retain forecast intent separately from historical estimates.",
      "count": 2,
      "examples": [
        {
          "file": "china_memory.json",
          "observation_index_1based": 31,
          "company_id": "cxmt",
          "metric": "wafer_capacity_estimate",
          "period": "2025",
          "source_id": "CNE008"
        },
        {
          "file": "china_memory.json",
          "observation_index_1based": 32,
          "company_id": "cxmt",
          "metric": "wafer_capacity_estimate",
          "period": "2026",
          "source_id": "CNE008"
        }
      ]
    },
    {
      "code": "native_company_id_case_variants",
      "message": "Native components use case variants; normalize identity before cross-file joins, without changing source records.",
      "count": 1,
      "examples": [
        {
          "variants": {
            "SAMSUNG": [
              "SAMSUNG",
              "samsung"
            ],
            "SK_HYNIX": [
              "SK_HYNIX",
              "sk_hynix"
            ],
            "MICRON": [
              "MICRON",
              "micron"
            ]
          }
        }
      ]
    },
    {
      "code": "partial_publication_date",
      "message": "Date precision is only year/month; exact-day point-in-time joins require an explicit availability policy.",
      "count": 5,
      "examples": [
        {
          "field": "publication_date",
          "value": "2020",
          "overlaps_cutoff": false,
          "file": "euv_users.json",
          "source_id": "EUV013",
          "source_index_1based": 13
        },
        {
          "field": "publication_date",
          "value": "2021",
          "overlaps_cutoff": false,
          "file": "euv_users.json",
          "source_id": "EUV014",
          "source_index_1based": 14
        },
        {
          "field": "publication_date",
          "value": "2024-05",
          "overlaps_cutoff": false,
          "file": "euv_users.json",
          "source_id": "EUV017",
          "source_index_1based": 17
        },
        {
          "field": "publication_date",
          "value": "2025",
          "overlaps_cutoff": false,
          "file": "euv_users.json",
          "source_id": "EUV018",
          "source_index_1based": 18
        },
        {
          "field": "publication_date",
          "value": "2026",
          "overlaps_cutoff": true,
          "file": "euv_users.json",
          "source_id": "EUV019",
          "source_index_1based": 19
        }
      ]
    },
    {
      "code": "publication_date_unknown",
      "message": "Unknown source publication date: do not use its target period as historical information availability.",
      "count": 30,
      "examples": [
        {
          "file": "process_packaging.json",
          "source_id": "PKG005",
          "source_index_1based": 5
        },
        {
          "file": "process_packaging.json",
          "source_id": "PKG006",
          "source_index_1based": 6
        },
        {
          "file": "process_packaging.json",
          "source_id": "PKG007",
          "source_index_1based": 7
        },
        {
          "file": "process_packaging.json",
          "source_id": "PKG008",
          "source_index_1based": 8
        },
        {
          "file": "process_packaging.json",
          "source_id": "PKG009",
          "source_index_1based": 9
        },
        {
          "file": "process_packaging.json",
          "source_id": "PKG010",
          "source_index_1based": 10
        },
        {
          "file": "process_packaging.json",
          "source_id": "PKG011",
          "source_index_1based": 11
        },
        {
          "file": "process_packaging.json",
          "source_id": "PKG012",
          "source_index_1based": 12
        },
        {
          "file": "process_packaging.json",
          "source_id": "PKG019",
          "source_index_1based": 19
        },
        {
          "file": "dram_hbm.json",
          "source_id": "MEM001",
          "source_index_1based": 1
        },
        {
          "file": "dram_hbm.json",
          "source_id": "MEM003",
          "source_index_1based": 3
        },
        {
          "file": "dram_hbm.json",
          "source_id": "MEM004",
          "source_index_1based": 4
        }
      ]
    }
  ],
  "details": {
    "asml_euv_composition": [
      {
        "period": "2024",
        "euv_total": 44,
        "nxe_low_na": 42,
        "exe_high_na": 2,
        "valid_aggregation": "Select EUV total OR sum NXE+EXE; never both.",
        "naive_double_counted_sum": 88
      },
      {
        "period": "2025",
        "euv_total": 48,
        "nxe_low_na": 44,
        "exe_high_na": 4,
        "valid_aggregation": "Select EUV total OR sum NXE+EXE; never both.",
        "naive_double_counted_sum": 96
      }
    ],
    "asml_annual_reconciliations": [
      {
        "period": "2009",
        "lithography_total": 70,
        "new": 47,
        "used": 23
      },
      {
        "period": "2010",
        "lithography_total": 197,
        "new": 154,
        "used": 43
      },
      {
        "period": "2011",
        "lithography_total": 222,
        "new": 195,
        "used": 27,
        "technology_sum_excluding_euv_subtypes": 222
      },
      {
        "period": "2012",
        "lithography_total": 170,
        "new": 146,
        "used": 24,
        "technology_sum_excluding_euv_subtypes": 170
      },
      {
        "period": "2013",
        "lithography_total": 157,
        "new": 142,
        "used": 15,
        "technology_sum_excluding_euv_subtypes": 157
      },
      {
        "period": "2014",
        "lithography_total": 136,
        "new": 116,
        "used": 20,
        "technology_sum_excluding_euv_subtypes": 136
      },
      {
        "period": "2015",
        "lithography_total": 169,
        "new": 144,
        "used": 25,
        "technology_sum_excluding_euv_subtypes": 169
      },
      {
        "period": "2016",
        "lithography_total": 157,
        "new": 139,
        "used": 18,
        "technology_sum_excluding_euv_subtypes": 157
      },
      {
        "period": "2017",
        "lithography_total": 197,
        "new": 173,
        "used": 24,
        "technology_sum_excluding_euv_subtypes": 197,
        "all_systems_including_metrology": 292,
        "metrology_inspection": 95
      },
      {
        "period": "2018",
        "lithography_total": 224,
        "new": 207,
        "used": 17,
        "technology_sum_excluding_euv_subtypes": 224,
        "all_systems_including_metrology": 338,
        "metrology_inspection": 114
      },
      {
        "period": "2019",
        "lithography_total": 229,
        "new": 203,
        "used": 26,
        "technology_sum_excluding_euv_subtypes": 229,
        "all_systems_including_metrology": 344,
        "metrology_inspection": 115
      },
      {
        "period": "2020",
        "lithography_total": 258,
        "new": 236,
        "used": 22,
        "technology_sum_excluding_euv_subtypes": 258,
        "all_systems_including_metrology": 395,
        "metrology_inspection": 137
      },
      {
        "period": "2021",
        "lithography_total": 309,
        "new": 286,
        "used": 23,
        "technology_sum_excluding_euv_subtypes": 309,
        "all_systems_including_metrology": 505,
        "metrology_inspection": 196
      },
      {
        "period": "2022",
        "lithography_total": 345,
        "new": 317,
        "used": 28,
        "technology_sum_excluding_euv_subtypes": 345,
        "all_systems_including_metrology": 561,
        "metrology_inspection": 216
      },
      {
        "period": "2023",
        "lithography_total": 449,
        "new": 421,
        "used": 28,
        "technology_sum_excluding_euv_subtypes": 449,
        "all_systems_including_metrology": 600,
        "metrology_inspection": 151
      },
      {
        "period": "2024",
        "lithography_total": 418,
        "new": 380,
        "used": 38,
        "technology_sum_excluding_euv_subtypes": 418,
        "all_systems_including_metrology": 583,
        "metrology_inspection": 165
      },
      {
        "period": "2025",
        "lithography_total": 327,
        "new": 300,
        "used": 27,
        "technology_sum_excluding_euv_subtypes": 327,
        "all_systems_including_metrology": 535,
        "metrology_inspection": 208
      }
    ],
    "semi_regional_reconciliations": [
      {
        "period": "2016",
        "source_id": "EQM01",
        "unit": "billion_USD",
        "regional_count": 7,
        "regional_sum": 41.23,
        "world_total": 41.24,
        "difference": -0.01,
        "rounding_tolerance": 0.04
      },
      {
        "period": "2017",
        "source_id": "EQM01",
        "unit": "billion_USD",
        "regional_count": 7,
        "regional_sum": 56.62,
        "world_total": 56.62,
        "difference": 0.0,
        "rounding_tolerance": 0.04
      },
      {
        "period": "2018",
        "source_id": "EQM02",
        "unit": "billion_USD",
        "regional_count": 7,
        "regional_sum": 64.55,
        "world_total": 64.53,
        "difference": 0.02,
        "rounding_tolerance": 0.04
      },
      {
        "period": "2019",
        "source_id": "EQM02",
        "unit": "billion_USD",
        "regional_count": 7,
        "regional_sum": 59.75,
        "world_total": 59.75,
        "difference": 0.0,
        "rounding_tolerance": 0.04
      },
      {
        "period": "2020",
        "source_id": "EQM03",
        "unit": "billion_USD",
        "regional_count": 7,
        "regional_sum": 71.18,
        "world_total": 71.19,
        "difference": -0.01,
        "rounding_tolerance": 0.04
      },
      {
        "period": "2021",
        "source_id": "EQM03",
        "unit": "billion_USD",
        "regional_count": 7,
        "regional_sum": 102.64,
        "world_total": 102.64,
        "difference": 0.0,
        "rounding_tolerance": 0.04
      },
      {
        "period": "2022",
        "source_id": "EQM04",
        "unit": "billion_USD",
        "regional_count": 7,
        "regional_sum": 107.66,
        "world_total": 107.64,
        "difference": 0.02,
        "rounding_tolerance": 0.04
      },
      {
        "period": "2023",
        "source_id": "EQM04",
        "unit": "billion_USD",
        "regional_count": 7,
        "regional_sum": 106.25,
        "world_total": 106.25,
        "difference": 0.0,
        "rounding_tolerance": 0.04
      },
      {
        "period": "2024",
        "source_id": "EQM05",
        "unit": "billion_USD",
        "regional_count": 7,
        "regional_sum": 117.14,
        "world_total": 117.14,
        "difference": 0.0,
        "rounding_tolerance": 0.04
      },
      {
        "period": "2025",
        "source_id": "EQM05",
        "unit": "billion_USD",
        "regional_count": 7,
        "regional_sum": 135.06,
        "world_total": 135.06,
        "difference": 0.0,
        "rounding_tolerance": 0.04
      }
    ],
    "finance_signs": [
      {
        "metric": "capital_expenditure_company_defined",
        "meaning": "Company-defined expenditure magnitude",
        "count": 45,
        "minimum": 13.2
      },
      {
        "metric": "cash_property_plant_equipment_expenditure",
        "meaning": "PPE cash outflow stored as positive magnitude",
        "count": 4,
        "minimum": 7676.0
      },
      {
        "metric": "government_capex_incentive_proceeds",
        "meaning": "Government incentive cash inflow stored as positive amount",
        "count": 4,
        "minimum": 315.0
      },
      {
        "metric": "depreciation_amortization_expense",
        "meaning": "Noncash depreciation/amortization expense/add-back",
        "count": 24,
        "minimum": 7756.0
      },
      {
        "metric": "research_development_expense",
        "meaning": "R&D expense magnitude",
        "count": 24,
        "minimum": 3114.0
      }
    ]
  },
  "methodology": {
    "cutoff": "Publication/retrieval dates must not be unambiguously after 2026-10-17. Future disclosed target periods are allowed; unknown/partial publication dates are warnings, never inferred from the target year.",
    "comparators": "Native comparator vocabulary retained. Inequality value is a threshold, not an equality. previous_year/quarter are comparison bases. Range points must be null; discrete option sets retain text and must not become continuous intervals.",
    "asml": "Use EUV total OR NXE+EXE. Lithography totals exclude metrology/inspection. Annual, half-year, quarterly, cumulative, shipment, and revenue-recognition measures are not pooled.",
    "semi": "Group by period, source vintage and unit; sum seven mutually exclusive destination regions and compare with world total using 0.005*(7+1) billion USD rounding tolerance.",
    "finance": "PPE expenditure is stored as outflow magnitude; incentives as positive inflow; D&A is noncash. Net non-GAAP capex is not forced to gross PPE minus incentives because definitions can include other adjustments.",
    "scope": "Structural and arithmetic validation of the eight research components; it does not re-audit every original source or validate the separate merged/normalized pipeline output."
  }
}
