FinObservatory

Sovereign debt / Methodology

FinWeave sovereign analytics layer: methodology

Built 2026-07-10 by scripts/build_sovereign.py, validated by scripts/validate_sovereign.py. This is a derived layer (FinWeave's own computation over already-provenanced inputs), not a re-published source. It sits on top of two existing layers: the crisis layer (docs/data_provenance.md, sovereign_debt events) and the sovereign-debt-level layer (data/parquet/sovereign_debt.parquet, built by scripts/build_sovereign_debt.py from a read-only IMF export). No new raw source is introduced here; every number traces back through those two layers to IMF and the crisis chronologies.

Outputs

FileGrainRowsContent
data/parquet/sovereign_debt_at_crisis.parquetone row per sovereign-debt crisis episode START249iso3, country_name, start_year, era, debt_start, series_start, debt_prev, series_prev
data/parquet/sovereign_crisis_debt_dist.parquetone row per scope (overall + 4 eras)5scope, n, median, q1, q3, min, max, mean of debt-at-crisis-start
data/parquet/sovereign_stats.parquetone row per country198latest debt by series, headline (fallback) latest, peak debt + year, crisis history, current-elevation flag vs the 2000+ crisis-start median

Series definitions and citations

Debt levels come from sovereign_debt.parquet, a long-format table (iso3, year, series, value, source). The GDD series cover 1950-2024, the WEO series 1980-2031 (built by scripts/build_sovereign_debt.py). Vintage: the GDD series are the live IMF Global Debt Database vintage (data/parquet/gdd.parquet, 1950-2024); the WEO series are the IMF WEO April 2026 edition (data/parquet/weo.parquet). This layer was rebuilt on these fresh vintages on 2026-07-10, replacing the earlier imf.db-derived export (which was truncated at 1980 and carried an older, superseded WEO vintage for Japan). See the "Vintage swap" note below.

  • gdd_general, IMF Global Debt Database, "Debt instruments, General government, Percent of GDP". 88 countries, 1950-2024. Citation: Mbaye, Moreno-Badia and Chae, "Global Debt Database: Methodology and Sources", IMF Working Paper WP/18/111 (2018); data via the IMF GDD. General government is the preferred perimeter (central + state + local + social security).
  • gdd_central, IMF GDD, "Debt instruments, Central government, Percent of GDP". 174 countries, 1950-2024. Same citation. Used as the first fallback when general-government is unavailable (GDD's general series is far sparser than central).
  • gdd_private, IMF GDD, "Debt securities and loans, Private sector, Percent of GDP" (GDD indicator PVD_LS). 160 countries, 1950-2024. Carried in the per-country profile for context (private leverage), not used in the debt-at-crisis construction.
  • weo_gross_debt, IMF World Economic Outlook, "Gross debt, General government, Percent of GDP" (WEO code GGXWDG_NGDP). 193 countries, 1980-2031, IMF WEO April 2026 edition (2025 and later years are IMF projections, excluded from all "latest"/"peak" figures here; see cutoff below). Second fallback after GDD central. Kosovo, coded UVK in GDD and KOS in WEO, is harmonized to KOS in the debt build so it stays a single country entity.
  • GMD govdebt_GDP, Global Macro Database (release 2026_06), general-government debt/GDP, from crises_panel.parquet. 1800-2025. Citation: Müller, Xu, Lehbib and Chen (2025), NBER WP 33714. This is the ONLY debt series that reaches before 1980, so it is the sole source of debt-at-crisis for pre-1980 episodes. GMD's debt series is itself a composite of underlying historical sources; treat pre-1950 readings as indicative.

Sovereign-debt crisis events come from crises_events.parquet (crisis_type='sovereign_debt'): the union of GMD, Reinhart-Rogoff (HBS BFFS distribution) and Laeven-Valencia (2020 vintage) sovereign-default/restructuring flags. Full per-source provenance, dedup rules and licenses are in docs/data_provenance.md. 92 countries carry at least one sovereign-debt crisis year.

The debt-at-crisis construction

  1. Episodes. For each country, distinct sovereign-debt crisis years are merged into episodes using the SAME rule as src/lib/episodes.ts: consecutive crisis years belong to one episode when separated by no more than two non-crisis years (year - previous_end <= 3). A gap of three or more non-crisis years starts a new episode. This makes the analytics layer's episode boundaries identical to what the /crises/[iso3] pages render. Result: 249 episode STARTS across 92 countries.
  2. Debt reading. For each episode start year y, debt/GDP is taken from a fixed fallback chain, and the series actually used is recorded (series_start / series_prev): gdd_general -> gdd_central -> weo_gross_debt -> GMD govdebt_GDP. The debt in the year before (y-1) is read the same way. The prior-year value is included so a reader can see the run-up, but note the two years may use different series if coverage differs.
  3. Era grouping by START year: pre-1950, 1950-1979, 1980-1999, 2000+.
  4. Distribution. Median, quartiles (Q1/Q3), min, max, mean of debt_start, computed overall and within each era, on the non-null subset (163 of 249 starts have a debt reading; coverage table below).

Coverage of debt-at-crisis-start by era (from the validation run):

EraEpisode startsWith a debt reading
pre-195011348
1950-19793022
1980-19998269
2000+2424

Pre-1950 coverage is the weakest (48/113): only GMD's historical debt series reaches that far, and it is missing for many countries. Every 2000+ start has a reading. Series mix across the 163 covered starts: gdd_central 93, GMD panel 53, gdd_general 17. The 2026-07-10 vintage swap extended GDD back to 1950, so 19 episodes in the 1950-1979 era that previously fell through to the GMD panel now take a GDD reading (GDD outranks GMD in the fallback chain); the total covered count is unchanged (163) because no previously-null episode gained a reading, but the pre-1980 series mix shifted from GMD to GDD central.

Vintage swap (2026-07-10)

The debt layer was re-sourced onto fresh IMF vintages on 2026-07-10. The old imf.db-derived export (GDD truncated at 1980, an older WEO edition) was replaced by gdd.parquet (live GDD, 1950-2024) and weo.parquet (WEO April 2026 edition, 1980-2031). What changed:

  • sovereign_debt.parquet: 30,421 -> 34,982 rows; 197 -> 197 countries (Kosovo's GDD UVK code harmonized to KOS, so no net new country); year range 1980-2030 -> 1950-2031.
  • Japan gross debt (the resolved vintage issue): the old WEO edition reported Japan 2020 general-government gross debt at 258.4% of GDP; the April 2026 edition reports 228.8%, matching the live IMF datamapper exactly (a ~20-31 pp downward revision across 2020-2026 from a WEO methodological/GDP-rebasing change). This affects the weo_gross_debt column only. Japan's headline debt on the page (236.7%, 2024) is sourced from GDD general government via the fallback chain, and GDD independently still reports ~258% for 2020 and 236.7% for 2024, so the headline and peak are effectively unchanged; the WEO column now agrees with the live source.
  • Analytics anchors unchanged: Greece 2012 (164.3, gdd_general), Argentina 2001 (48.0, gdd_central), USA latest (120.8, gdd_general), the 249 episode starts / 92 countries, the 2000+ benchmark median (80.7), and the elevated-country count (45, Sudan/Eritrea/Japan top three) all reproduce exactly.
  • 1950-1979 era median moved from 28.25% to 22.87% (mean 36.27 -> 31.35): with GDD now reaching 1950, 19 pre-1980 episode starts switched from the GMD historical panel to GDD central, which reports systematically lower debt for those countries. Eleven episode debt-at-start readings moved by more than 2 pp (all 1950-1979, all GMD-panel -> GDD-central), the largest being Togo 1979 (89.1 -> 60.1), Sierra Leone 1977 (44.8 -> 24.0), Zimbabwe 1965 (28.9 -> 14.2) and Turkey 1963 (27.6 -> 13.2). The pre-1950, 1980-1999 and 2000+ era medians are unchanged; the overall median is unchanged (54.4%), with Q1/Q3 shifting slightly (30.6/87.8 -> 30.2/85.3).

Per-country profile

sovereign_stats.parquet, one row per country that appears in the debt data or the crisis events (198 countries):

  • Latest level by series: latest_general, latest_central, latest_private, latest_weo_gross each with their year, taken at the most recent year <= 2024.
  • Headline latest (headline_debt, headline_year, headline_series): the latest general-government reading via the fallback chain gdd_general -> gdd_central -> weo_gross_debt (GMD panel is NOT used for the level table, to keep the headline on the IMF perimeter).
  • Peak (peak_debt, peak_year, peak_series): the maximum of the best-available headline series over its full history <= 2024.
  • Crisis history: crisis_count (number of episodes), first_crisis_year, last_crisis_year, years_since_last_crisis (measured to the reference year AS_OF = 2025).

Current-elevation table (deliverable 3)

exceeds_benchmark = true flags countries whose latest headline general-government debt/GDP exceeds the historical median debt-at-crisis-start of the 2000+ era (80.7% of GDP). Every "latest" observation falls in the 2000+ period, so the 2000+ crisis-start median is the era-matched benchmark; benchmark_median is written as a column (single value, 80.7) and elevation_gap = headline_debt - benchmark_median. 45 countries are flagged.

This is a factual comparison, not a prediction. It states only that a country's current debt level is above the level at which sovereign crises of the current era typically began. It does NOT say the country will have a crisis, is near one, or is safe if below the line. The next section explains why the debt level alone carries little predictive content.

External-debt enrichment sources (added 2026-07-10)

Three additional sources enrich the per-country /sovereign/[iso3] profile. None replaces the debt-at-crisis construction above; they add the external (non-resident) debt dimension, the current default stock, and the historical creditor-loss record. All three are open or research-permissive. Full retrieval provenance is in data/raw/{ids,crag,haircuts}/SOURCE.md and folded into docs/data_provenance.md; the sweep-level verification is in docs/data_expansion_2026_07.md.

World Bank International Debt Statistics (IDS)

  • What it is: external debt owed to non-residents, reported by 120 low- and middle-income borrowing economies (high-income economies are absent by construction, so a high-income country's page shows an honest "no IDS series"). Parquet ids_debt.parquet (long format iso3, indicator_code, year, value), joined to ids_indicators.parquet (names) and ids_countries.parquet (income group, region).
  • Definitions of the panel indicators: DT.DOD.DECT.CD total external debt stocks (current US$); DT.DOD.DECT.GN.ZS the same as a percent of GNI; DT.TDS.DECT.CD total debt service paid (current US$); DT.TDS.DECT.EX.ZS debt service as a percent of exports of goods, services and primary income; DT.DOD.DSTC.ZS short-term share of total external debt; DT.DOD.MLAT.ZS multilateral share; FI.RES.TOTL.DT.ZS reserves as a percent of total external debt.
  • Vintage / cutoff: series updated 2025-12-03; the profile shows actual years only, capped at 2024. IDS carries forward debt-service repayment schedules on already-contracted debt to 2032 (DT.TDS.*, DT.AMT.*, DT.INT.*); these forward years are excluded from the "latest" snapshot and the trajectory table to stay aligned with the rest of the sovereign layer.
  • License: CC BY 4.0 (World Bank Data Catalog).
  • Citation: World Bank. International Debt Statistics. Washington, DC: World Bank. https://data.worldbank.org/products/ids

BoC-BoE Sovereign Default Database (CRAG)

  • What it is: the stock of government debt in default, by country, year (1960-2024) and creditor class, from the Bank of Canada / Bank of England joint database. Parquet crag.parquet (iso3, country, year, creditor_class, amount_usd). Twelve creditor classes (IMF, IBRD, IDA, IADB, Paris Club, China, other official, foreign-currency bank loans, foreign-currency bonds, other private creditors, local-currency debt, and domestic/fiscal arrears).
  • How it is used: the per-country panel shows the creditor-class breakdown in a country's latest year with any external default, plus the external total (sum of the eleven non-arrears classes). Domestic (fiscal) arrears are carried and displayed separately, never folded into the external total, because the database's own headline "total debt in default" excludes them (tr124.pdf line 232). The /sovereign index "defaults now" strip counts countries with a positive external-default total in the latest year (2024) and sums it: 84 countries, $425.01 billion, which reproduces the note's published World 2024 total of "US$425 billion" exactly.
  • Units: current (nominal) US dollars. The source reports millions; the parquet stores raw USD (source millions x 1e6), so amount_usd is literally dollars.
  • License: Bank of Canada site-wide Terms of Use, section 1.1: free use, copy, distribution and transmission with attribution to the Bank of Canada and indication of any changes. Attribution shown on every CRAG source line.
  • Citation: Beers, D., Ndukwe, O. and Berry, J. (2025). "BoC-BoE Sovereign Default Database: What's New in 2025?" Bank of Canada Staff Analytical Note 2025-24. DOI: 10.34989/san-2025-24. Methodology: Technical Report 124 (2023).

Sovereign haircuts (Cruces-Trebesch, updated)

  • What it is: the creditor loss ("haircut") imposed by each recorded sovereign-debt restructuring, 1815 to present. Parquet haircuts.parquet (case_id, iso3, year_default, year, haircut_pct, haircut_facevalue_pct, debt_restructured_usd_m, source). The per-country table lists each restructuring by its restructuring year.
  • Definitions: haircut_pct is the preferred present-value haircut (Sturzenegger-Zettelmeyer / Cruces-Trebesch methodology, source fraction x 100); haircut_facevalue_pct is the headline face-value (principal) write-down; debt_restructured_usd_m is the amount restructured in current US$ millions; source is the per-case citation string carried from the workbook (the "preferred label" the source itself attaches to each case, e.g. "Cruces and Trebesch (2013)", "Meyer, Reinhart and Trebesch (2022)", or the authors' calculation note for post-2013 cases). Anchor: Argentina case 39, restructuring year 2005 (default 2001), haircut_pct = 76.8.
  • Crisis linkage: a restructuring row shows a link to the matching sovereign-debt crisis episode only when its restructuring year falls inside a merged sovereign window for that country (exact containment, computed with the same toEpisodes merge the crisis atlas uses). No fuzzy/nearest-year matching. Argentina's 2005 restructuring falls inside the 2001-2016 sovereign episode and links to it; a restructuring in a year with no sovereign flag shows no link.
  • Units: haircut_pct and haircut_facevalue_pct are percentages; debt_restructured_usd_m is US$ millions (rendered on the page after x 1e6 as a compact USD figure). Never mixed with the debt/GDP percentages.
  • License: no explicit license; open academic download, research use with citation (the Kiel Institute / Trebesch data page norm).
  • Citation: Cruces, J. J. and Trebesch, C. (2013). "Sovereign Defaults: The Price of Haircuts." American Economic Journal: Macroeconomics 5(3): 85-117. Modern cases updated in Graf von Luckner, C., Meyer, J., Reinhart, C. M. and Trebesch, C. (2024). "Sovereign Haircuts: 200 Years of Creditor Losses." IMF Economic Review 73: 150-195.

Units discipline (all three sources)

IDS dollar stocks/service and CRAG default amounts are both current US dollars; haircut magnitudes are US$ millions; haircut and IDS ratio series are percentages. None of these is a percent of GDP. The government debt-to-GDP series in the sections above (IMF GDD / WEO / GMD) is % of GDP. The page copy states the unit on every figure and never places a USD debt stock next to a %-of-GDP ratio as if comparable; a country can have a modest external-debt-to-GNI ratio and a large absolute stock, or vice versa.

Official risk classification: OECD CRC (added 2026-07-11)

Every /sovereign/[iso3] page now carries an "Official risk classification" panel from the OECD Country Risk Classification (oecd_crc.parquet, Sweep 3; countryCrcHistory in src/lib/sovereign.ts, CrcPanel component).

  • What it is: the OECD's ordinal 0-7 country-credit-risk category, which sets the minimum premium rates the Participants to the OECD Arrangement on Officially Supported Export Credits may charge. The parquet is long format (iso3, date, risk_class), 20,502 rows, 102 vintages 1999-01 to 2026-06, keyed unique on (iso3, date).
  • The scale: categories 1 to 7 are the risk ladder (1 lowest, 7 highest). Category 0, and the blank (null) status the OECD has used since 2013 for the same set of countries, both denote high-income OECD and high-income euro-area economies that are exempt from the minimum-premium framework because their export credit is priced on market terms. The panel collapses class 0 and null to one "exempt" state, so such a country reads as exempt throughout rather than showing a spurious numeric "0". This mirrors the Sweep-3 integrity rule (docs/data_expansion_2026_07.md): the 4,840 null rows (23.6%) are exempt by design, not missing, and must never be coerced to 0.
  • Step-history construction: the full ordered per-country series is compressed to change points (consecutive equal states merged), so the table shows only the dates where the classification actually changed, newest first, with the current run flagged. everRated distinguishes a country that has carried a real 1-7 category at some point (e.g. BGD) from one that is exempt for its entire record (e.g. DEU, USA), which instead gets a one-sentence honest statement. Countries absent from the CRC set entirely (a handful of sovereign-layer countries the OECD does not list) show an honest coverage-limit note, not a zero.
  • Anchors (checked against the parquet and the rendered pages 2026-07-11): BGD current Category 6 of 7 (as of 2026-06-26), step-history 5 (from 1999) -> 6 (2002-04-18) -> 5 (2015-06-26) -> 6 (2025-06-27). DEU and USA exempt throughout (class 0 through 2012-10-26, blank since 2013-01-01).
  • Units discipline: the category is an ordinal risk step, NOT a probability, a rate, or a percent, and is never combined with any of the debt/GDP or USD figures on the page.
  • License: OECD CRC content is free to reuse with attribution to the OECD. Amber flag on pre-2018 vintages carried at the estate level (docs/data_expansion_2026_07.md); the panel attributes the OECD on every source line.
  • Citation: OECD, Country Risk Classifications of the Participants to the Arrangement on Officially Supported Export Credits. https://www.oecd.org/en/topics/sub-issues/export-credits/country-risk-classification.html

United States debt in detail: Treasury Fiscal Data + TIC (added 2026-07-11, USA only)

/sovereign/USA alone (gated on iso3 === "USA", so no other page runs the queries) carries a "United States debt in detail" section built from three US Treasury sources via src/lib/sovereignUs.ts and the UsDebtDetail component.

  • Debt to the Penny (us_debt.parquet, Fiscal Data, daily, 1993-04-01 to 2026-07-09, keyed unique on date): total public debt outstanding, split into debt held by the public and intragovernmental holdings. Exact-dollar discipline: the raw values are precise to the cent; the page displays them rounded to $0.01 trillion with the daily record date ("as of Jul 9, 2026") and the Sweep-3 retrieval date ("retrieved Jul 11, 2026") both shown, so the vintage is unambiguous. The sparkline is one point per calendar year (last observation of each year). Latest: $39.41T total ($31.71T public + $7.70T intragovernmental).
  • Average interest rate on marketable debt (us_debt_rates.parquet, Fiscal Data, monthly, 2001-01 to 2026-06): the weighted-average coupon on Total Marketable Treasury securities. Only security_class = 'Total Marketable' is read; a single stray 'TotalMarketable' (no space) row in the raw source is a typo and is excluded by the exact match. Latest 3.411% (2026-06), against 6.620% at the 2001-01 start.
  • Top foreign holders (tic_mfh.parquet, Treasury International Capital, monthly, latest 2026-04): the ten largest foreign holders of Treasury securities, in USD billions (the TIC unit; not converted). Japan leads at $1,209.9 bn, then the UK ($937.5 bn) and mainland China ($651.1 bn). The section also reports the all-foreign Grand Total ($9,352.6 bn) and the foreign-official subtotal ($3,906.5 bn) from the TIC aggregate rows.
  • Units discipline: debt is exact dollars shown as $T; the interest rate is a percent; TIC holdings are USD billions. The three are labelled distinctly and never mixed with each other or with the debt/GDP series.
  • License: all three are US-government works, public domain (17 U.S.C. section 105), commercial-safe (open spine, ROADMAP section 0).
  • Citations: U.S. Department of the Treasury, Fiscal Data: Debt to the Penny and Average Interest Rates on U.S. Treasury Securities (https://fiscaldata.treasury.gov/); U.S. Department of the Treasury, Treasury International Capital (TIC): Major Foreign Holders of Treasury Securities (https://ticdata.treasury.gov/).

Quarterly public debt: World Bank QPSD (added 2026-07-11)

Every /sovereign/[iso3] page whose country reports to the World Bank Quarterly Public Sector Debt database now carries a "Quarterly debt (World Bank QPSD)" section (wb_qpsd.parquet, view wb_qpsd; countryQpsd in src/lib/qpsd.ts, QpsdTrendChart component). It sits after the annual "Debt profile" stats and before the US-only Treasury detail, as a higher-frequency companion to the annual IMF figures.

  • What it is: gross public debt, quarter by quarter, as a percent of GDP (for the trend line) plus the latest US-dollar level. The database reports two perimeters: general government (GG) and central government (CG). The section prefers GG and falls back to CG only where GG is not reported, in which case the narrower perimeter is stated in words ("central government, a narrower perimeter that excludes state, local and social-security debt"). All rows are instrument_or_total = 'total' (total gross debt, not instrument-split) and 3-letter ISO3 (no aggregates).
  • Perimeter and valuation caveat (the reason this is a separate section, not a re-statement): QPSD general-government gross debt and the IMF WEO/GDD annual general-government series are not the same measure. They can differ in the coverage of the public sector and in the valuation of instruments (nominal, face, or market value), so a quarterly QPSD reading and an annual IMF reading for the same period need not match. The page shows the latest annual IMF figure beside the QPSD card explicitly labelled "different perimeter and valuation", and the section copy tells the reader to read the quarterly line as within-year timing, not as a re-statement of the annual ratio. The two are never presented as one series and never plotted on the same axis.
  • Coverage: 97 economies report to QPSD; 75 report general government, 22 report central government only (the labelled-fallback set, e.g. Argentina, China). Quarterly series run 1995 onward for the earliest reporters to 2025-Q4 for the freshest. Countries outside the 97 simply do not show the section (countryQpsd returns null, the section is gated on it).
  • Units: the trend is percent of GDP (pct_gdp); the latest-level readout is US$ (from debt_usd_mn, US$ millions, shown compact as $T/$B via fmtUsdMillions). Neither is mixed with the USD external-debt stocks or the ordinal CRC category elsewhere on the page.
  • License: World Bank QPSD, CC BY 4.0, attribution on the source line.
  • Citation: World Bank, Quarterly Public Sector Debt (QPSD). https://www.worldbank.org/en/programs/debt-statistics/qpsd
  • Anchors (checked against the parquet 2026-07-11): USA general government 2025-Q4 = 136.8% of GDP ($42.10T), versus 117.2% central government the same quarter (the perimeter gap in one country); Bangladesh 2025-Q4 = 25.1% of GDP (GG and CG coincide). Argentina reports central government only, so its section is the labelled CG fallback.

Honest caveats

  • Debt level is NOT a sufficient crisis predictor. The Reinhart-Rogoff "debt intolerance" literature (Reinhart, Rogoff and Savastano, "Debt Intolerance", Brookings Papers 2003; Reinhart and Rogoff, This Time Is Different, 2009) documents that emerging-market sovereigns have defaulted at debt/GDP ratios far below advanced-economy peacetime norms. Default risk depends on debt composition (currency, maturity, domestic vs external holders), fiscal capacity, credit history, and market access, none of which this ratio captures. The current-elevation flag is a descriptive comparison only.
  • Low-ratio default exemplar: Argentina 2001. Argentina's central-government debt/GDP at the 2001 default was 48.0% (year before: 40.8%), below the overall crisis-start median of 54.4% and far below the 2000+ median of 80.7%. It is the canonical case that a moderate ratio does not imply safety.
  • No-default counterexample: Japan. Japan's latest general-government debt/GDP is 236.7% (2024, IMF GDD general government, the headline series), the highest in the elevated table, yet Japan has had no sovereign default in the modern era. (The WEO April 2026 gross-debt series reports a lower 214.5% for 2024 on a different perimeter; the page carries both, clearly labelled.) Its single sovereign-debt episode in the crisis chronologies is the WWII-era 1942-1952 window (RR, with GMD flagging 1942); post-1952 Japan carries zero sovereign-crisis flags despite the world's highest debt ratio. High debt held mostly domestically in own currency behaves very differently from externally-held foreign-currency debt.
  • Series breaks and mixed perimeters. The fallback chain mixes general-government, central-government and GMD composite series across episodes and even between a start year and its prior year. Central-government debt is mechanically lower than general-government debt (it excludes sub-national and social-security debt), so a gdd_central reading understates the general-government ratio. Cross-era medians therefore compare partly different perimeters; era medians are more internally consistent than cross-era differences.
  • Coverage gaps bias the pre-1980 distribution. Only 48 of 113 pre-1950 starts have any debt reading, all from GMD's historical composite. The pre-1950 median (60.8%) rests on a non-random subset (countries with surviving historical debt data), and should be read as indicative, not representative of all pre-1950 defaults.
  • Crisis chronologies end before the debt data. The sovereign-crisis flags end in 2017 (GMD, Laeven-Valencia) and 2016 (Reinhart-Rogoff), while debt levels run to 2024. years_since_last_crisis measured to 2025 will therefore overstate the true gap for any country whose most recent default fell in 2018-2024 (none is in the source because the source stops in 2017), and a "0 years since" is impossible after 2017. The elevated flag likewise says nothing about post-2017 events.
  • Restructurings counted as crises. Both GMD and Laeven-Valencia code sovereign restructurings (not only hard defaults) as sovereign-debt crisis years, matching the crisis-layer convention. Episode starts therefore include restructuring events.

Validation

scripts/validate_sovereign.py prints evidence for each of the following (run 2026-07-10):

  • Structural: 249 start rows, zero duplicate (iso3, start_year); 198 country rows; zero latest/peak years after 2024 (no forecast leak).
  • Anchor episodes:
    • Greece 2012: debt_start = 164.3 (gdd_general), prior year 175.1, within the expected 160-175 band.
    • Argentina 2001: debt_start = 48.0 (gdd_central), prior year 40.8, the low-ratio default exemplar.
    • USA sovereign starts = [1933] (the RR gold-clause abrogation); USA 1930 is a banking, not sovereign, event and is correctly absent.
    • Japan: single episode start 1942, latest headline debt 236.7% with crisis_count = 1 (the WWII episode), the no-default counterexample.
  • Distribution reproduces: the 2000+ median recomputed directly from sovereign_debt_at_crisis.parquet equals the value stored in sovereign_crisis_debt_dist.parquet (80.7).
  • Elevation table: benchmark_median is a single value (80.7); zero membership-rule violations (every flagged country has headline_debt > benchmark_median); 45 countries flagged.