Data Changelog

Every correction we have made,
dated, in one place.

A running record of corrections to the data behind the Chokepoint Dependency Model and the Port Risk Index. Updated as corrections happen, not on a schedule. A model with a visible history of catching and fixing its own errors is more trustworthy than one that claims never to have had any.

Corrections logged, 2026 12entries
Most recent 21 Aug2026
Reported-tier exposure 48.0% of value
Dependency matrix rows 1,812rows
About this page

The public summary. The full technical record is available under NDA.

This is a running, dated record of corrections made to the data behind the Chokepoint Dependency Model and the Port Risk Index. Every entry below is real and complete in its own right: what changed, when, and what it affected.

A fuller technical writeup for each correction, including root cause detail and verification methodology, is available to serious prospects under a non disclosure agreement. See the request form at the bottom of this page.

Process

Two checks run continuously, not only when something looks wrong.

A structured spot audit checks a sample of country, commodity, and chokepoint combinations against independent public sources on a fixed schedule. A benchmark regression checks a fixed set of known reference figures after every model rebuild, so that a change made for one reason cannot silently move an unrelated figure without being caught. Full detail on both processes, including tier definitions and how to request an independent verification, is in our data verification policy.

Corrections

The record, most recent first.

8 October 2026 — Port Risk Index corrections, logistics performance values, and display of risk bands
The logistics-performance values behind the Port Risk Index reliability dimension were partly wrong, and the same default had been applied to about 350 ports. The index uses the World Bank Logistics Performance Index to estimate dwell time for ports that have no measured figure. The table of national values in the build pipeline had been typed in by hand. Checked against the published 2023 report, only 32 of 129 typed values matched, and the average difference was 0.23 points. The table is now replaced with the published 2023 scores for all 139 countries in the report. A further 60 countries in the earlier table have no published score and keep their earlier value, marked as unverified until a source is found. The roughly 350 ports corrected on 6 October also had default values for logistics performance, dwell time, labour regime and port state control; those were re-derived from each port's own country.
Effect. The logistics-performance value changed for 2,830 ports and the estimated dwell time for 1,450. The composite score changed for 1,605 ports, by 0.03 on average, with the largest rise 0.15 and the largest fall 0.30. North Korea and Comoros rose; ports in Iceland, the Faroe Islands, Svalbard and Niue fell. 34 ports moved between the score bands used in earlier versions.
The Port Risk Index no longer shows risk bands. The map and the port chips used four named bands (Moderate, Elevated, High, Critical). These were removed from displays because the names implied a judgement that the score does not support. Ports now show their score, rank and percentile, and the map colour runs continuously with the percentile. The scores themselves are unchanged by this display change.
One Joint War Committee listing flag was wrong. A Red Sea export port in Saudi Arabia was shown as not in a listed area. Saudi Arabia is a named country in the Joint War Committee list, so the port is listed. The listed-area outlines used in our internal map tool were also redrawn against the current circulars (JWLA-034 and JWLA-035). Every coordinate from the circular was already correct; the errors were in the closing lines we drew over land, and several named countries had been left out of our country list.
6 October 2026 — Port Risk Index corrections, country codes and conflict flags
About 350 of the 3,774 ports in the Port Risk Index were scored with a default governance and sanctions value instead of their own country's. These ports had no country code in the build pipeline, so the stability dimension fell back to the global median for political stability and government effectiveness, and to no sanctions. The affected countries include Haiti, North Korea, Burma, the Dominican Republic, Ireland, Iceland, Estonia, Liberia, Namibia and a number of island territories. For territories, the stability inputs now follow the sovereign state. The country codes were filled in and the stability dimension and composite score were recalculated for every affected port.
The conflict and territorial dispute flags matched fewer than half of the ports they were meant to cover. The flags were matched by exact port name, but the index uses different spellings for many ports (for example Odesa, Al Mukalla, Al Ladhiqiyah), so ports such as Odesa, the Hodeidah area, Mukalla, Latakia and the Taiwan ports carried no flag. One flag also matched the wrong place: a town called Stanley in Tasmania was treated as the Falkland Islands. Flags are now matched by name within the right country or by location within 25 kilometres. The Tasmanian match was removed.
Effect. 335 ports changed composite score and 41 changed risk tier. The Critical tier grew from 3 to 24 ports and the High tier from 51 to 73. Ports in stable, unsanctioned countries with a missing country code, such as Iceland and Ireland, moved slightly down. Not yet corrected: the same ports also carry a default logistics-performance value, which feeds the dwell-time estimate for ports that rely on the national formula. That will be corrected in a later entry.
5 October 2026 — a second correction, Panama routing
Asia to Europe and Asia to West Africa trade was counted as passing through the Panama Canal. The routing rules grouped every Atlantic-facing port into a single basin, so cargo moving between Asia and a European or West African Atlantic port was assigned a Panama leg, when the real routes run through the Strait of Malacca, Bab el-Mandeb, the Suez Canal and Gibraltar (Europe), or around the Cape of Good Hope (West Africa). The largest affected flows were containers, vehicles and electronics, for example China to Germany computers and Japan to Belgium cars. In total about 137 billion US dollars of annual trade value was moved off Panama, which takes Panama-routed trade in the model from roughly 348 billion to roughly 210 billion US dollars, every flow of which now has an American endpoint. No grain figure changed, and no figure for the tracked energy, ore and fertilizer commodities changed, because none of those flows had a European or West African Atlantic endpoint on a Panama route. The Panama analysis page no longer shows its all-commodity aggregate value at risk, which depended on the old routing base, and says so. A standing check now stops the release if any voyage transits Panama without an American exporter or importer. South American Atlantic countries were deliberately left as they were, because Panama, Cape Horn and the Cape of Good Hope are all live routes for them. Verified by a full rebuild in which every changed flow was a container, vehicle or electronics flow.
5 October 2026 — one correction found while reconciling published figures
Russian-origin cargo to India was counted as passing through the Strait of Hormuz. For one country pair, Russia to India, the model's generic routing assigned the Strait of Hormuz to every commodity except crude oil, which had been corrected earlier. Russian cargo has no route through the Strait of Hormuz, so the assignment was wrong. It affected about 7.2 billion US dollars of annual trade value across coal, refined petroleum, fertilizer and smaller commodities. The visible effect was that India's Hormuz dependency for nitrogenous fertilizer read 48.4 percent when the correct figure, checked against the underlying 2024 trade data, is 26.6 percent, and India's refined petroleum dependency read 69.1 percent when the corrected figure is 37.4 percent. Several analysis pages that cited India's fertilizer figures have been restated and carry a correction note. The corrected cargo is now assigned to the Black Sea exit at the Bosphorus, which matches the existing treatment of Russian crude to India, and this is a documented estimate: the Suez and Bab el-Mandeb legs of that journey are not yet modeled. A standing check now runs on every rebuild and stops the release if any voyage passes through the Strait of Hormuz, the Bosphorus, the Danish Straits, the Kiel Canal or the St. Lawrence without an exporter or importer in that region. Verified by a full rebuild in which only six India rows changed.
21 August 2026 — one correction found during a routine data refresh
Country names displayed as three letter codes for a small set of European figures. For eleven European countries, including Greece, Turkey, and the Netherlands, a specific data view was displaying the three letter country code instead of the full country name, for example GRC instead of Greece. This affected only the displayed name. The underlying dependency and value figures for these countries were correct throughout and did not change. Traced to a formatting issue in one upstream data file, corrected at the source, with a standing check added that will catch the same class of formatting issue automatically before any future rebuild. Verified directly against the corrected output.
18 August 2026 — three corrections following a scheduled internal audit
European crude oil duplicate figures. A data merge edge case caused certain European countries, including Greece, Germany, France, and Belgium, to have their crude oil dependency figures on the Strait of Hormuz counted twice under specific conditions. Found and corrected. Affected figures across our published analysis were updated the same day.
Missing Cape of Good Hope routing option. Grain exports from a set of Atlantic basin countries, including Brazil and Argentina, were being modelled as routing through the Suez Canal toward Asian markets. In reality, this trade typically routes around the Cape of Good Hope instead. We added a corrected routing rule covering the affected exporters and verified it against known trade patterns, while confirming that unaffected countries on the same trade lane, including the United States, the Netherlands, and Germany, correctly retained their existing routing.
A data formatting inconsistency affecting a small number of figures. Found while verifying the correction above: a data type inconsistency in how commodity codes were read from different source files, which had been slightly overstating a handful of figures. Clearest example: China's crude oil dependency on the Strait of Malacca had been reading 46.3 percent, and is now confirmed at 46.2 percent, matching the figure independently published elsewhere. Fixed at the source and verified by rerunning the full pipeline twice, confirming identical results both times.
13 August 2026 — one correction found during a routine pipeline update
While adding new commodity coverage, a routine internal check found that under certain conditions our pipeline could select conflicting versions of the same underlying trade record, which affected a small number of dependency figures. Clearest symptom: two countries' iron ore dependency briefly read above 100 percent, a mathematically impossible value that our own benchmark check flagged before anything was published externally. We rebuilt the affected calculation so that it always produces the same result from the same input data, and verified this by rerunning the pipeline twice and confirming byte for byte identical output.
10 July 2026 — seven corrections over two days, plus a naming correction
Across a two day period, seven corrections were made to the model, ranging from a data confidence reclassification affecting five commodities to a larger routing correction affecting over sixty billion dollars of surfaced trade value across sixteen countries. A further, separate change corrected the naming of our own confidence tier system.
"Earlier corrections" is not a euphemism for hidden. It means reviewed to a lower publication standard than the entries above, not withheld.

The entries above are not where our correction record begins. The model has an internal engineering history reaching back through its initial build, with well over one hundred individually numbered corrections made during that period, covering routing logic, coverage gaps, and data quality issues found in the ordinary course of extending and hardening the model. That earlier record exists and is retained in full internally. We are working through it to bring it up to the same publication standard as the entries above, rather than publish a rough summary of periods we have not yet reviewed to that standard. Until that work is complete, the full internal history for any period is available to serious prospects under a non disclosure agreement, on the same terms as the technical detail behind the entries above.

Coverage

Where each data tier sits, by row and by value.

Counted by row, Estimated is the largest tier, concentrated in the long tail of smaller bilateral flows where official reporting is thinnest. Counted by the dollar value those rows represent, the picture reverses: Reported-tier rows carry the largest share of total modelled exposure. The flows with the most money behind them are disproportionately the ones with the strongest sourcing.

Reported
48.0%
of value
Estimated
40.8%
of value
Corroborated
11.2%
of value
By row count instead of value: Estimated 61.6%, Corroborated 22.7%, Reported 15.6%, across 1,812 rows in the current dependency matrix. Full tier definitions are in our data verification policy.
Scope

What this record intentionally does not include.

This page does not include every internal check that found nothing wrong. Those checks happen on a fixed schedule regardless of whether an anomaly is suspected, and their results are logged internally. It also does not include the full technical mechanics behind each correction. That level of detail, including exact root cause and code level verification steps, is available under non disclosure agreement on request, and is the kind of material we expect a data as liability buyer, an ESG platform, a reinsurer, or a port financier, to reasonably want before relying on our figures in their own work.

The full correction record is available
under NDA for serious counterparties.

This page describes every correction at a level sufficient to judge our process. The full technical record, including root cause detail, exact verification steps, and our complete pre-July engineering history, is available on request to qualified counterparties under a standard NDA. Request it and we will send the record before the call.

fysh@narrows.io · A person will reply.