# Re-export share manifest
# =========================
#
# Per-country published re-export share — used by the SWF seeder
# (`scripts/seed-sovereign-wealth.mjs`) to convert GROSS annual imports
# into NET annual imports when computing `rawMonths = SWF / imports × 12`
# for the `sovereignFiscalBuffer` dimension. See plan reference at
# `docs/plans/2026-04-24-002-fix-resilience-cohort-ranking-structural-audit-plan.md`
# §PR 3A.
#
# Why this matters. For countries that function as re-export hubs (goods
# imported for onward re-shipment without substantial transformation),
# the "months of imports" denominator is structurally wrong: the gross
# import figure double-counts flow-through trade that never represents
# domestic consumption. The correction:
#
#   netAnnualImports = grossAnnualImports × (1 − reexport_share_of_imports)
#
# where `reexport_share_of_imports` is the UNCTAD-published fraction of
# that country's merchandise imports re-exported without transformation.
#
# Why manifest + citation instead of a live API. UNCTAD's Handbook of
# Statistics publishes re-export aggregates annually as PDF/Excel; there
# is no stable SDMX series for this specific derivative. National stats
# offices publish the underlying data with varying schemas. Manifest-
# with-citation mirrors the `scripts/shared/swf-classification-manifest.yaml`
# pattern: each entry is a committed audit trail (source URL, table
# reference, year) that any reader can verify.
#
# Revision policy. Update when UNCTAD releases a new Handbook (annual)
# OR a national stats office publishes a materially different figure.
# Every revision: coefficient change + source citation update in the
# same PR.
#
# Schema (per entry):
#   country:                    ISO-3166-1 alpha-2 country code
#   reexport_share_of_imports:  0..1 — fraction of gross imports that
#                               flow through as re-exports
#   year:                       reference year of the cited figure
#   rationale:                  what the cited source says, in one line
#   sources:                    list of URLs / citations
#
# Scoring impact (applied in `scripts/seed-sovereign-wealth.mjs`):
#   When a country entry is PRESENT:
#     netAnnualImports = grossAnnualImports × (1 − reexport_share_of_imports)
#     rawMonths = aum / netAnnualImports × 12
#   When a country entry is ABSENT:
#     rawMonths = aum / grossAnnualImports × 12   (status quo behaviour)
#
# Fallback semantics are CRITICAL: absence MUST NOT throw or produce a
# silent zero. Absent = "no published UNCTAD figure, use gross imports
# as a conservative approximation." The SWF seeder's per-country loop
# must tolerate a missing entry.
#
# Candidates deferred for follow-up verification (NOT in this manifest):
#
#   HK (Hong Kong SAR):  well-documented re-export-dominated trade.
#                        Hong Kong C&SD publishes a clean domestic-export
#                        vs re-export split. Likely 0.80-0.95 after the
#                        imports/exports parity adjustment. Verify
#                        against HK C&SD monthly trade release.
#   SG (Singapore):      ~45-50% of exports are re-exports (Singapore
#                        Statistics). Convert to imports-share via
#                        imports ≈ exports steady-state assumption.
#   NL (Netherlands):    Rotterdam + Europoort transhipment hub.
#                        CBS publishes a clean re-export series.
#   BE (Belgium):        Antwerp + Zeebrugge. Modest re-export share.
#   PA (Panama):         Colón Free Zone. High share.
#   AE (United Arab Emirates): Dubai Jebel Ali + Sharjah. The plan's
#                        primary motivating case — this correction is
#                        exactly what unblocks UAE's sovereignFiscalBuffer
#                        denominator. Verify against UAE Federal
#                        Competitiveness and Statistics Authority.
#   MY (Malaysia):       Port Klang transhipment. Moderate.
#   LT (Lithuania):      EU-to-CIS transit, pre-2022. Post-2022 sanctions
#                        have reshaped this — figure needs current-year
#                        verification.
#
# Each deferred candidate gets its own manifest-edit PR with:
#   (a) specific UNCTAD / national-stats source URL
#   (b) table / section number + year
#   (c) the exact value copied from the source, not interpolated
#   (d) re-run of the cohort-sanity audit
#   (e) contribution-decomposition table showing the effMo shift

manifest_version: 1
last_reviewed: 2026-04-24
# REVIEWED means: the schema is committed and the loader validates the
# file. Entries themselves are added country-by-country in follow-up
# PRs per the "one entry per PR with citation" discipline.
external_review_status: REVIEWED

# Countries with UNCTAD-verified re-export shares. Intentionally empty
# in this landing PR — populated entry-by-entry in follow-up PRs with
# explicit source citations. Empty + loader-validated is the safe
# default: the SWF seeder falls back to gross imports for every country
# until a specific entry lands.
countries: []
