Method & caveats
N−1 stress = 1/(1−f), where f is the leader’s share of world exports: the factor by which every other exporter must scale to cover the same demand. Concentration is the export HHI before, and after the leader is removed and survivors are renormalised (the runner-up’s new share). Coverage@κ assumes each surviving exporter can scale its exports up to κ× current; spare = (κ−1)×current, coverage = min(1, Σspare / freed). Reshuffle & friction: entropic optimal transport (Sinkhorn) reallocates the leader’s freed demand onto survivors at minimum great-circle cost between country centroids; friction = mean distance the reshuffled supply travels ÷ the leader’s original mean shipping distance (>1 = spare sits farther away).
Caveats. This is export-based by construction — it models the loss of what the leader ships, which is the correct frame for reallocation (a domestic-consuming refiner’s output was never available to importers), but it means the leader’s share here is an export share, not a production share. The κ scale-up ceiling is an explicit assumption, not a forecast — read coverage as “how much slack exists at ceiling κ,” not a prediction. Distance is a crude friction proxy (centroid great-circle, not shipping cost or capability). Shared HS codes (gallium/germanium 811292) mix metals, so those rows are a basket. This is a stress test of today’s trade structure, not the post-diversification world the Break the chokepoint page tracks. Built by build_ot.py on CEPII BACI. See also the leverage map (how exposed is each importing country), shock scenarios, the supply-shock cascade, and the decision layer.