mirror of
https://github.com/koala73/worldmonitor.git
synced 2026-04-26 01:24:59 +02:00
* feat(energy): expand gas pipeline registry 12 → 28 (phase 1a batch 1)
Data validation after v1 launch showed pipelines shipped at ~16% of the
plan target (12 gas + 12 oil vs. the plan's 75 + 75 critical
pipelines). This commit closes ~20% of the gas gap with 16 hand-curated
global additions, every entry carrying a full evidence bundle matching
the schema enforced by scripts/_pipeline-registry.mjs.
New additions by region:
North Sea / NW Europe (6):
europipe-1, europipe-2, franpipe, zeepipe, interconnector-uk-be, bbl
Mediterranean / North Africa (3):
transmed (Enrico Mattei), greenstream (LY→IT, reduced),
meg-maghreb-europe (DZ→ES via MA, offline since Oct 2021)
Middle East (1):
arab-gas-pipeline (EG→LB via JO/SY, offline under Caesar Act)
Former Soviet / Turkey (1):
blue-stream (RU→TR, carries EU sanctions ref)
Asia (3):
west-east-3 (CN internal, 7378 km), myanmar-china-gas (shwe),
igb (interconnector-greece-bulgaria, 2022)
Africa / LatAm (2):
wagp (west african gas pipeline, 4-country transit),
gasbol (bolivia-brazil, 3150 km)
Badge distribution on new entries:
flowing: 12, reduced: 2, offline: 2
First non-Russia-exposure offline entries (MEG — Morocco-Algeria
diplomatic closure, Arab Gas — Syria sanctions) — broadens the
geographic distribution of evidence-bundle-backed non-positive badges.
Registry tests: 17/17 pass (identity, geometry bounds, ISO2 country
codes, evidence contract, capacity-commodity pairing, validateRegistry
negative cases).
Next batches in this phase: oil pipelines +16, then second batches
each commodity to reach plan target (75+75). Tracked in
docs/internal/energy-atlas-registry-expansion.md.
* feat(energy): expand oil pipeline registry 12 → 28 (phase 1a batch 2)
Mirror of the gas batch — 16 hand-curated global additions with full
evidence bundles. Closes ~20% of the oil gap.
New additions by region:
North America (6):
enbridge-mainline (CA→US 3.15 mbd), enbridge-line-3-replacement (2021),
flanagan-south, seaway (Cushing→Gulf), marketlink (TC, Cushing→Gulf),
spearhead
Middle East (3):
sumed (EG crude bypass of Suez, 2.8 mbd),
east-west-saudi (Petroline, 5 mbd — largest single oil pipeline in
the registry by capacity),
ipsa-2 (IQ→SA, offline since Iraq invasion of Kuwait 1990, later
converted to gas on the western stretch)
Central Asia (1):
kazakhstan-china-crude (KZ→CN Alashankou, 2228 km)
Africa (1):
chad-cameroon-cotco (TD→CM Kribi, 1070 km)
South America (2):
ocp-ecuador (heavy crude, 450 kbd),
sote-ecuador (lighter grades, 360 kbd)
Europe (3):
tal-trieste-ingolstadt (IT→DE via AT, 770 kbd),
janaf-adria (HR→RS→HU, 280 kbd),
norpipe-oil (NO→DE North Sea crude, 900 kbd)
Badge distribution on new entries:
flowing: 15, offline: 1 (IPSA-2, regulator-sourced + nationalisation
statement backing the offline badge per the evidence-contract rules).
Registry totals after this batch:
gas: 12 → 28 (37% of plan target 75)
oil: 12 → 28 (37% of plan target 75)
total: 24 → 56
Registry tests: 17/17 registry + 23/23 evidence-derivation = 40/40 pass.
Typecheck-free (JSON only).
Next batches (per docs/internal/energy-atlas-registry-expansion.md):
gas batch 2: +22 → 50 (North Sea remainder, Caspian, Asia)
oil batch 2: +22 → 50 (North Sea remainder, Russia diversified,
Asia long-haul)
* feat(energy): expand gas pipeline registry 28 → 50 (phase 1a batch 3)
Second gas batch, 22 additions, bringing gas to ~67% of the 75-pipeline
plan target. Geographic distribution deliberately skewed this batch
toward under-represented regions (Middle East, Central Asia, South
America, Africa, Southeast Asia) since the first batch filled Europe
and North America.
New additions (22):
North Sea / UK (2):
vesterled (NO→GB, 13 bcm/yr),
cats (UK, 9.6 bcm/yr)
Iran family (3):
iran-turkey-gas (Tabriz→Ankara, 14 bcm/yr, OFAC sanctions ref),
iran-armenia-gas (2.3 bcm/yr),
iran-iraq-basra-gas (reduced state — waiver-dependent flows)
Central Asia (2):
central-asia-center (TM→RU via UZ/KZ, 44 bcm/yr nominal, reduced),
turkmenistan-iran-korpeje (expired contract, reduced)
Caucasus / Turkey (2):
south-caucasus-scp (BTE predecessor to TANAP, 22 bcm/yr),
sakarya-black-sea-tr (2023 Turkish offshore)
China (2):
west-east-1 (4200 km, 17 bcm/yr),
west-east-2 (8700 km, 30 bcm/yr)
South America (2):
bolivia-argentina-yacuiba (reduced),
antonio-ricaurte (CO→VE, offline since 2015, PDVSA sanctions)
Saudi / Middle East (2):
saudi-master-gas-system (SA internal, 95 bcm/yr — largest capacity
in the registry), egypt-jordan-aqaba (AGP south leg, flowing)
Israel-Egypt (1):
israel-egypt-arish-ashkelon (reverse-flow since 2020, IL→EG export)
Planned / FID-stage (5):
galsi-planned (DZ→IT, consortium paused),
eastmed-planned (IL→CY→GR, US political support withdrawn Jan 2022),
trans-saharan-planned (NG→DZ via NE, insurgency + financing unresolved),
morocco-nigeria-offshore-planned (NG→MA 11-country offshore route),
power-of-siberia-2-planned (RU→CN via MN, no binding CNPC contract),
kirkuk-dohuk-turkey-gas-planned (IQ→TR, Baghdad-Erbil dispute)
Badge distribution on new batch:
flowing: 10 (incl. Sakarya 2023 commissioned)
reduced: 3 (CAC, BO-AR, IR-IQ)
offline: 1 (Antonio Ricaurte, CO-VE, with operator statement + sanction)
unknown: 6 (all planned/FID-stage, classifierConfidence 0.6-0.75)
All non-flowing badges have evidence (sanction refs, operator
statements, or press sourcing) per the evidence-contract validator.
Registry totals after this batch:
gas: 28 → 50 (67% of plan target; gas ≥60 gate threshold not yet
hit but approaching)
oil: 28 (unchanged — batch 4 will target oil to 50)
total: 56 → 78
Registry tests: 17/17 pass. Includes 8 new fully-hedged "unknown" /
planned-status entries; validator accepts them.
Next: oil batch 2 (+22 → 50), then gas batch 3 (+10 → 60), oil batch 3
(+10 → 60). After that the gate criteria on pipelines hit and we can
focus on storage / shortages / disruptions.
* feat(energy): expand oil pipeline registry 28 → 50 (phase 1a batch 4)
Second oil batch, 22 additions, bringing oil to 67% of plan target and
matching gas (50 each, 100 total pipelines).
New additions (22):
Russia Baltic export (2):
bps-1 (Primorsk, 1.3 mbd — largest single line in oil registry),
bps-2 (Ust-Luga, 0.75 mbd). Both carry G7+EU price-cap sanctions ref.
North America diversified (3):
enbridge-line-5 (CA→CA via US Straits of Mackinac, ongoing litigation),
keystone-xl-cancelled (CA→US, permit revoked 2021, Biden; TC
terminated Jun 2021; listed for historical + geopolitical
completeness, physicalState=unknown by deriver rule),
trans-panama-pipeline (PA, 0.9 mbd cross-isthmus)
Europe remaining (3):
rotterdam-rhine-rrp (NL→DE, 275 km),
spse (FR→DE Lyon→Karlsruhe, 769 km),
forties-pipeline (UK North Sea, 0.6 mbd),
brent-pipeline (NO→GB Sullom Voe, reduced — Brent field in
decommissioning)
Middle East (2):
khafji-neutral-zone (SA/KW, reduced post-2015 neutral-zone dispute),
ab-1-bahrain (SA→BH, 2018, 0.35 mbd)
Africa (4):
greater-nile-petroleum (SS→SD Port Sudan, 1610 km),
djeno-congo (CG terminal system),
nigeria-forcados-export (reduced — recurring force-majeure),
nigeria-bonny-export (Trans Niger Pipeline, reduced)
Latin America (2):
pemex-nuevo-cactus (MX, 0.44 mbd),
trans-andino (AR→CL, offline since 2006 export restrictions)
Ukraine (1):
odesa-brody (offline, under EU 2022/879 Russian-crude embargo
framework)
Asia (1):
myanmar-china-crude (MM→CN Kunming, 771 km parallel to
myanmar-china-gas)
Caspian (1):
baku-novorossiysk-northern (AZ→RU historical route, reduced, carries
Russian crude price-cap ref)
Historical / planned (2):
kirkuk-haifa-idle (IQ→IL via JO, closed 1948 — listed for
completeness; periodically floated as reopening proposal),
uganda-tanzania-eacop-planned (UG→TZ, under construction, Western
bank-financing pulled but TotalEnergies continues)
Badge distribution on new batch:
flowing: 10
reduced: 6 (Brent decommissioning, Khafji dispute, Greater Nile,
Forcados, Bonny, Baku-Novorossiysk)
offline: 2 (Odesa-Brody, Trans-Andino, Kirkuk-Haifa)
unknown: 2 (Keystone XL cancelled, EACOP under construction)
Wait, Kirkuk-Haifa is offline not among 2. Corrected count:
flowing: 10, reduced: 6, offline: 3 (Odesa-Brody, Trans-Andino,
Kirkuk-Haifa), unknown: 2, plus 1 flowing Myanmar-China-crude = 22.
All non-flowing badges carry supporting evidence (operator statements,
sanction refs, or press citations) per the evidence-contract validator.
Registry totals after this batch:
gas: 50 (67% of plan target)
oil: 28 → 50 (67% of plan target)
total: 78 → 100
Registry tests: 17/17 + 23/23 evidence-derivation = 40/40 pass.
Next batches to hit the 60-each gate criteria from
docs/internal/energy-atlas-registry-expansion.md:
gas batch 3: +10 → 60 (EastMed details, Galsi alternative routes,
minor EU-interconnectors, Nigeria LNG feeder gas lines)
oil batch 3: +10 → 60 (Pluto crude, Chinese Huabei system, Latam
infill: Brazil Campos, Peru Northern Trunk)
After 60/60: hit gate, move to storage expansion.
* feat(energy): gas registry 50 → 75 — plan target hit
Batch 3 adds 25 more gas pipelines, bringing gas to 100% of the
75-pipeline plan target.
New additions by region (25):
- Norwegian transport spine: statpipe, sleipner-karsto, troll-a,
oseberg-gas-transport, asgard-transport (covers the major offshore
export collectors — the rest of the Gassco system)
- Australia: dampier-bunbury (1594 km), moomba-sydney (1299 km)
- Africa: mozambique-rompco (MZ→ZA), escravos-lagos-gas (NG),
tanzania-mtwara-dar, ghana-gas (atuabo)
- Southeast Asia: thailand-malaysia-cakerawala, indonesia-singapore
west-natuna + grissik-sakra
- German hubs for Nord Stream continuation: nel-pipeline, opal-pipeline,
eugal-pipeline (built but dormant after NS2 halt/destruction),
megal-pipeline, gascade-jagal, zeelink-germany
- Russia/Ukraine/EU transit: progress-urengoy-uzhhorod (halted 1 Jan
2025 when Ukraine did not renew transit agreement), trans-austria-gas
- Iran: kish-iran-gas, iran-pakistan-gas-planned (Pakistani segment
stalled since 2014)
- China/HK: china-hong-kong-gas
Badge distribution on new batch: 15 flowing, 4 reduced (NEL, OPAL,
TAG, Escravos-Lagos), 2 offline (EUGAL dormant post-NS2,
Urengoy-Uzhhorod transit halt), 4 sanction-exposed (NS-continuation
pipelines + TAG + Urengoy), 1 unknown (Iran-Pakistan stalled
completion).
Plan progress: gas 50 → 75 (100% of plan target).
Registry tests: 17/17 pass.
* feat(energy): oil registry 50 → 75 — plan target hit
Batch 4 adds 25 more oil pipelines, bringing oil to 100% of the
75-pipeline plan target. Combined with gas at 75, total registry is
150 pipelines — full plan coverage for Phase 1a.
New additions by region (25):
- Latin America: colombia-cano-limon-covenas (ELN-sabotaged, reduced),
colombia-ocensa (main trunk), peru-norperuano (reduced from jungle
spills + protests), ecuador-lago-agrio-orellana,
venezuela-anzoategui-puerto-la-cruz (under OFAC PDVSA sanctions),
mexico-salina-cruz-minatitlan, mexico-madero-cadereyta,
mexico-gulf-coast-pipeline (Tuxpan-Mexico City)
- Africa: angola-cabinda-offshore, south-sudan-kenya-lamu-planned
(LAPSSET)
- Middle East: iran-abadan-isfahan, iran-neka-tehran (reduced,
Caspian swap arrangements), saudi-abqaiq-yanbu-products,
iraq-strategic-pipeline (1000 km north-south), iraq-bai-hassan,
oman-muscat-export (Fahud-Mina al-Fahal), uae-habshan-ruwais
- Asia-Pacific: india-salaya-mathura (1770 km, largest Indian crude
trunk), india-vadinar-kandla, india-mundra-bhatinda,
china-qinhuangdao-tianjin-huabei, china-yangzi-hefei-hangzhou
- Russia East: russia-sakhalin-2-crude, russia-komsomolsk-perevoznaya,
russia-omsk-pavlodar (cross-border to KZ)
Badge distribution on this batch: 18 flowing, 6 reduced, 1 unknown
(LAPSSET planned). Sanctions-exposure diversified: Iran framework (3),
Venezuela/PDVSA (1), Russian price-cap (3). All non-flowing badges
carry supporting evidence per validator rules.
Phase 1a final state (pipelines):
gas: 12 → 75 (100% of plan target, 6 batches)
oil: 12 → 75 (100% of plan target, 6 batches)
total: 24 → 150
Geographic distribution now global:
- Russia-exposure: ~22 of 150 entries (~15%, down from 50% at v1)
- US-only: ~8 (~5%, down from 33% storage-side skew)
- Six continents represented in active infrastructure
- Historical + planned pipelines (Kirkuk-Haifa, Keystone XL cancelled,
EACOP u/c, EastMed planned, GALSI planned, TSGP planned,
Nigeria-Morocco offshore, Power of Siberia 2, Iran-Pakistan Peace,
LAPSSET) listed with honest 'unknown' physicalState per validator
Registry tests: 17/17 pass.
Phase 1a complete. Next phase (per
docs/internal/energy-atlas-registry-expansion.md):
- Phase 2: storage 21 → ~200 (+179) via curation + GIIGNL/GIE/EIA
- Phase 3: shortages 14 → 28 countries
- Phase 4: disruptions 12 → 50 events
* feat(energy): shortages 15 → 29 entries across 28 countries — plan target hit
+14 country additions matching the 28-country plan target. The
validator's 'confirmed severity requires authoritative source' rule
caught two of my drafts (Myanmar + Sudan) where I had labeled them
confirmed with press-only evidence because regulator/operator sources
under a junta + active civil war are not independently verifiable.
Downgraded both to 'watch' with an inline note explaining the
evidence-quality choice — exactly the validator's intended behavior
(better to under-claim than over-claim severity when the authoritative
channel is broken).
New shortages (14):
- BD diesel: BPC LC delays, regulator-confirmed
- ZA diesel: loadshedding demand spike
- AO diesel: Luanda/Benguela depot delays
- MZ diesel: FX-allocation import constraints
- ZM diesel: mining-sector demand + TAZAMA product tightness
- MW diesel: FX shortfalls + MERA rationing
- GH petrol: Tema port congestion
- MM diesel: post-coup chronic (watch, press-only evidence)
- MN diesel: winter logistics
- CO diesel: trucker strike cycles
- UA diesel: war-driven chronic (confirmed — Ministry of Energy source)
- SY diesel: Caesar Act chronic (confirmed — Syrian Ministry statement)
- SD diesel: civil-war disruption (watch, press-only)
- DE heating_oil: Rhine low-water logistics (watch)
Badge distribution on new batch: 3 confirmed (BD, UA, SY — all with
regulator/operator evidence), 11 watch.
Plan progress:
shortages: 15 → 29 entries (28 unique countries = 100% of plan)
gas: 75 (100%)
oil: 75 (100%)
storage: 21 (unchanged, next batch)
disruptions: 12 (unchanged, next batch)
Registry tests: 19/19 pass.
* feat(energy): disruption event log 12 → 52 events — plan target hit
+40 historical and ongoing events covering the asset registry,
bringing disruptions to 104% of the 50-event plan target. Every event
ties to an assetId now in pipelines/storage registries (following the
75-gas + 75-oil + 21-storage registry expansion in the preceding
commits).
New additions by eventType:
Sabotage / war (7):
- abqaiq-khurais-drone-strike-2019 (Saudi, 5.7 mbd removed 11 days)
- russia-refinery-drone-strikes-2024 (Ukrainian drone strike series)
- houthi-red-sea-attacks-2024 (indirect SuMed demand impact)
- russia-ukraine-oil-depot-strikes-2022 (series)
- nigeria-trans-niger-attacks-2024 (Bonny system)
- bai-hassan-attack-2022 (Iraq Bai Hassan)
- sudan-pipeline-attacks-2023 (Greater Nile disruption)
Sanctions (7):
- russia-price-cap-implementation-2022 (G7+EU $60/bbl cap)
- eu-oil-embargo-2022 (6th package)
- pdvsa-designation-2019 (Venezuela)
- btc-kurdistan-shutdown-2023 (ICC ruling, ongoing)
- ipsa-nationalization-2001 (SA nationalised after Iraq invasion of Kuwait)
- arctic-lng-2-foreign-partner-withdrawal-2024
- yamal-lng-arctic-sanctions-ongoing (Novatek)
- ogm-moldova-transit-2022
Mechanical (4):
- druzhba-contamination-2019 (chlorides, 3-month shut)
- keystone-milepost-14-leak-2022 (Kansas, 22-day shut, 14k bbl spill)
- forties-crack-2017 (Red Moss hairline)
- ocensa-ocp-ecuador-suspensions-2022 (Amazon landslide)
Weather (2):
- hurricane-ida-lng-2021 (Gulf coast LNG shutdown)
- rotterdam-hub-low-water-2022 (Rhine 2.5-month disruption)
Commercial (9):
- cpc-blockage-threat-2022 (Russian court 30-day halt threat)
- gme-closure-2021 (Algeria-Morocco MEG)
- ukraine-transit-end-2025 (Progress pipeline halted 1 Jan 2025)
- eugal-dormant-since-2022 (NS2 knock-on)
- keystone-xl-permit-revoked-2021 (Biden day-1)
- antonio-ricaurte-halt-2015 (CO→VE gas export halt)
- langeled-brent-decommissioning-2020
- eacop-financing-2023 (Western bank withdrawal)
- dolphin-qatar-uae-commercial-2024 (contract renegotiation)
- trans-austria-gas-reduction-2022 (Gazprom volume drops)
- cushing-stocks-tank-bottoms-2022
- spr-drawdown-2022-2023 (largest ever 180 mbbl release)
- zhoushan-storage-expansion-2023
- fujairah-stockbuild-2024
- futtsu-lng-demand-decline-2024
- bolivia-diesel-import-cut-2023 (GASBOL)
- myanmar-china-gas-reduced-2023
- yamal-europe-poland-halt-follow-on-2024
Maintenance (1): gladstone-lng-maintenance-2023
Ongoing events (endAt=null): 31 of 52 (~60%). Reflects the structural
reality that many 2022-era sanctions + war events remain live in 2026.
Plan progress:
gas: 75 (100%)
oil: 75 (100%)
storage: 21 (unchanged, next batch)
shortages: 29 (100% — 28 countries)
disruptions: 12 → 52 events (104% of plan)
Registry tests: 16/16 pass.
* feat(energy): storage registry 21 → 66 (storage batch 1)
+45 facilities, 33% of plan. Focus: European UGS + second LNG wave.
European UGS additions (35 — mostly filling the gap against GIE AGSI+
coverage which has ~140 EU sites; we now register the majority of
operationally significant ones with non-trivial working capacity):
Germany (9): bierwang, etzel-salt-cavern, jemgum, krummhoern,
peckensen, reckrod, uelsen, xanten, epe-salt-cavern
Netherlands (3): alkmaar, norg (largest NL, 59.2 TWh), zuidwending
Austria (3): 7fields-schonkirchen (24.6 TWh), baumgarten-uhs,
puchkirchen
France (7): chemery (38.5 TWh), cerville-velaine, etrez, manosque,
lussagnet (35 TWh), izaute
Italy (4): minerbio (45 TWh, largest IT), ripalta, sergnano,
brugherio
UK (2): rough (reduced, post-2017 partial reopening 2022), hornsea
Central/Eastern Europe (8): damborice (CZ), lobodice (CZ),
lab-slovakia (36 TWh), hajduszoboszlo (HU), mogilno (PL),
lille-torup (DK), incukalns (LV), gaviota (ES)
Russia (1): kasimovskoe (124 TWh — Gazprom UGS flagship; EU sanctions
ref carried as evidence)
LNG terminals (9 additions to round out global coverage):
- US: freeport-lng, cameron-lng, cove-point-lng, elba-island-lng
- Middle East: qalhat-lng (Oman), adgas-das-island (UAE)
- Russia: sakhalin-2-lng (sanctions-exposed)
- Indonesia: tangguh-lng, bontang-lng (reduced — declining upstream)
Badge distribution on this batch: 43 operational, 2 reduced (Rough,
Bontang). Most entries from GIE AGSI+ fill-disclosed data; Russian
site + LNG terminals fill-not-disclosed (operator choice + sanctions).
Plan progress:
gas pipelines: 75 (100%)
oil pipelines: 75 (100%)
fuel shortages: 29 / 28 countries (100%)
disruptions: 52 (104%)
storage: 21 → 66 (33% of ~200 target)
Registry tests: 21/21 pass.
Next storage batches remaining:
batch 2 (+45): more European UGS tail + Asian national reserves
(CN SPR, IN SPR, JP national reserves, KR KNOC)
batch 3 (+45): LNG import terminals + additional US tank farms +
European tank farms (Rotterdam detail, ARA sub-sites)
batch 4 (+45): remainder to ~200
* feat(energy): storage registry 66 → 110 (storage batch 2)
+44 facilities. Focus: Asian national reserves + global LNG coverage
+ Singapore/ARA tank-farm detail.
Asian national reserves (11):
- IN ISPRL: vizag (9.8 Mb), mangalore (11 Mb), padur (17.4 Mb)
- CN: zhanjiang (45 Mb), huangdao (20 Mb) — fill opaque, press-only
- JP JOGMEC: shibushi (31.2 Mb), kiire (22 Mb), mutsu-ogawara (28 Mb)
- KR KNOC: yeosu (42 Mb), ulsan (33 Mb), geoje (47 Mb)
LNG export additions (11):
- Australia: pluto-lng, prelude-flng (reduced), darwin-lng (reduced
upstream)
- Southeast Asia: mlng-bintulu (29.3 Mtpa — largest in registry),
brunei-lng, donggi-senoro-lng
- Africa: angola-lng (reduced), equatorial-guinea-lng, hilli-episeyo-flng
- Pacific: png-lng
- Caribbean: trinidad-atlantic-lng (reduced)
- Mexico: costa-azul-lng (2025 reverse-to-export commissioning)
LNG import (12):
- UK: south-hook-lng (21 Mtpa), dragon-lng
- EU: zeebrugge-lng, dunkerque-lng, fos-cavaou-lng,
montoir-de-bretagne-lng, gate-terminal (Rotterdam),
revithoussa-lng
- Turkey: aliaga-ege-gaz-lng
- Chile: mejillones-lng, quintero-bay-lng
Tank farms (10):
- Africa: saldanha-bay (ZA 45 Mb)
- Norway: mongstad-crude
- ARA: antwerp-petroleum-hub (BE 55 Mb), amsterdam-petroleum-hub
- Asia hubs: singapore-jurong (120 Mb — largest in registry),
singapore-pulau-ayer-chawan, thailand-sriracha, korea-gwangyang-crude
- Russia Baltic: ust-luga-crude-terminal, primorsk-crude-terminal
(both carry Russian price-cap sanction refs)
Badge distribution on this batch: 39 operational, 5 reduced (Prelude,
Darwin, Angola, Bontang — no wait Bontang already in. Correct: Prelude,
Darwin, Angola, Trinidad).
Plan progress:
gas pipelines: 75 (100%)
oil pipelines: 75 (100%)
fuel shortages: 29 / 28 countries (100%)
disruptions: 52 (104%)
storage: 66 → 110 (55% of ~200 target)
Registry tests: 21/21 pass.
Next batches remaining: ~90 more storage to hit ~200
batch 3 (+45): Middle East tank farms, Chinese coastal commercial
storage, EU UGS tail, African LNG import
batch 4 (+45): remainder to 200
* feat(energy): storage registry 110 → 155 (storage batch 3)
Adds 45 facilities toward 200 plan target:
- 7 Middle East export terminals (Kharg, Sidi Kerir, Mina al-Ahmadi,
Mesaieed, Jebel Dhanna, Mina al-Fahal, Bandar Imam Khomeini)
- 10 EU UGS tail (Reitbrook, Empelde, Kirchheilingen, Stockstadt,
Nüttermoor, Grijpskerk, Târgu Mureș, Třanovice, Uhřice, Háje)
- 4 Chinese coastal crude (Yangshan, Qingdao, Rizhao, Maoming)
- 6 EU LNG import tail (La Spezia, Adriatic, OLT Livorno, Klaipeda,
Mugardos, Cartagena)
- 5 Indian LNG import (Hazira, Kochi reduced, Ennore, Mundra, Dabhol)
- 6 Japan/Korea LNG import (Chita, Negishi, Sodegaura, Himeji,
Pyeongtaek, Incheon)
- 5 NA tank farms (Lake Charles, Corpus Christi, Patoka, Edmonton,
Hardisty)
- 2 Asia-Pacific (Kaohsiung, Nghi Son)
Registry validator: 21/21 tests pass.
* feat(energy): storage registry 155 → 200 (storage batch 4 — plan target hit)
Final batch brings storage to the 200-facility plan target with broad
geographic + facility-type coverage.
New entries (45):
- 6 LNG export: NLNG Bonny (NG, reduced), Arzew (DZ), Skikda (DZ),
Perú LNG, Calcasieu Pass (US), North West Shelf Karratha (AU)
- 7 LNG import: Świnoujście (PL), Krk FSRU (HR), Wilhelmshaven FSRU (DE),
Brunsbüttel (DE), Map Ta Phut (TH), Port Qasim (PK), Batangas (PH)
- 6 UGS: Bilche-Volytsko-Uherske (UA, 154 TWh — largest Europe), Banatski
Dvor (RS), Okoli (HR), Yela (ES), Loenhout (BE), Kushchevskoe (RU)
- 26 crude tank farms: José Terminal (VE, sanctioned), Santos (BR),
TEBAR São Sebastião (BR), Dos Bocas (MX), Bonny (NG, reduced), Es
Sider (LY, reduced), Ras Lanuf (LY, reduced), Ceyhan (TR), Puerto
Rosales (AR), Novorossiysk Sheskharis (RU, sanctioned), Kozmino (RU,
sanctioned), Tema (GH, reduced), Mombasa (KE), Abidjan SIR (CI),
Juaymah (SA), Ras Tanura (SA), Yanbu (SA), Kirkuk (IQ, reduced),
Basra Gulf (IQ), Djibouti Horizon (DJ), Yokkaichi (JP), Mailiao
(TW), Ventspils (LV, reduced), Gdańsk Naftoport (PL), Constanța
(RO), Wood River IL (US).
Geographic balance improved: Africa coverage (NG, DZ, LY, GH, KE, CI,
DJ) from 5 to 12 countries; first Iraq + Saudi entries; Balkans +
Ukraine + Romania now covered. Type mix: UGS 56, SPR 15, LNG export 33,
LNG import 38, crude tank farm 58.
Non-operational entries all carry authoritative evidence (press
operator statements + sanctionRefs for Russia/Venezuela).
Registry validator: 21/21 tests pass. Total: 200 facilities across 55
countries. Plan target hit.
* fix(energy): address Greptile review findings on registries
P1 — abqaiq-khurais-drone-strike-2019 (energy-disruptions.json):
capacityOfflineMbd was 5.7 (plant-level Saudi production loss headline)
against assetId east-west-saudi (5.0 mbd pipeline). Capped offline
figure at the linked pipeline's 5.0 mbd ceiling; moved the 5.7 mbd
historical headline into shortDescription with an explanatory note.
Preserves capacity-offline ≤ asset-capacity invariant for downstream
consumers.
P1 — russia-price-cap-implementation-2022 (energy-disruptions.json):
was linked to assetId espo (land pipeline to China — explicitly out of
scope for G7/EU price cap). Relinked to primorsk-crude-terminal
(largest Baltic seaborne crude export terminal, directly affected);
assetType pipeline → storage. Updated shortDescription to clarify
tanker-shipment scope + out-of-scope note for ESPO.
P2 — 13 reduced-state pipelines missing press citation text
(pipelines-gas.json × 8 + pipelines-oil.json × 5):
Added operatorStatement sentences naming the press/regulator sources
backing each reduction claim (Reuters, NNPC/Chevron releases, NIGC,
Pemex annual reports, S&P Platts, IEA Gas Market Report, BBC, etc.).
Clears the evidence-source-type gap flagged by Greptile for entries
that declared physicalStateSource: "press" with a null statement.
All 6583 data tests + 94 registry tests still pass.
* style(energy): restore compact registry formatting (preserve Greptile-fix evidence)
Prior commit 44b2c6859 accidentally reformatted pipelines-gas.json
and pipelines-oil.json from their compact mixed format to fully-
expanded JSON via json.dump(indent=2), producing 2479 lines of noise
for 13 one-line semantic changes.
This commit restores the original compact formatting while preserving
the 12 operatorStatement text additions from the Greptile P2 fix
(peru-norperuano was already fine — it carries a structured
operatorStatement object; the other 12 entries correctly gained press
citation text).
No data change vs 44b2c6859 — only whitespace reverts to original
layout. Pipeline registry tests (40/40) + full test:data (6583/6583)
still pass.
1483 lines
63 KiB
JSON
1483 lines
63 KiB
JSON
{
|
||
"source": "Curated from operator disclosures, regulator filings, ENTSOG, GEM (CC-BY 4.0)",
|
||
"methodologyUrl": "/docs/methodology/pipelines",
|
||
"version": "v1",
|
||
"referenceYear": 2026,
|
||
"classifierVersion": "v1",
|
||
"pipelines": {
|
||
"nord-stream-1": {
|
||
"id": "nord-stream-1",
|
||
"name": "Nord Stream 1",
|
||
"operator": "Nord Stream AG",
|
||
"commodityType": "gas",
|
||
"fromCountry": "RU",
|
||
"toCountry": "DE",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 55,
|
||
"lengthKm": 1224,
|
||
"inService": 2011,
|
||
"startPoint": { "lat": 60.08, "lon": 29.05 },
|
||
"endPoint": { "lat": 54.14, "lon": 13.66 },
|
||
"evidence": {
|
||
"physicalState": "offline",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": {
|
||
"text": "Pipelines damaged by underwater explosions in Swedish/Danish EEZ (Sep 2022); operator filed for insolvency.",
|
||
"url": "https://www.nordstream.com/press-info/",
|
||
"date": "2022-09-26"
|
||
},
|
||
"commercialState": "suspended",
|
||
"sanctionRefs": [
|
||
{ "authority": "EU", "listId": "2022/1269 (energy sanctions package 8)", "date": "2022-10-06", "url": "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32022R1269" }
|
||
],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.98
|
||
}
|
||
},
|
||
"nord-stream-2": {
|
||
"id": "nord-stream-2",
|
||
"name": "Nord Stream 2",
|
||
"operator": "Nord Stream 2 AG",
|
||
"commodityType": "gas",
|
||
"fromCountry": "RU",
|
||
"toCountry": "DE",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 55,
|
||
"lengthKm": 1234,
|
||
"inService": null,
|
||
"startPoint": { "lat": 60.08, "lon": 29.05 },
|
||
"endPoint": { "lat": 54.14, "lon": 13.66 },
|
||
"evidence": {
|
||
"physicalState": "offline",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": {
|
||
"text": "One of two lines damaged in Sep 2022 sabotage; commissioning halted by Germany in Feb 2022.",
|
||
"url": "https://www.bundesregierung.de/breg-en/news/baerbock-ukraine-russia-nordstream2-2005934",
|
||
"date": "2022-02-22"
|
||
},
|
||
"commercialState": "suspended",
|
||
"sanctionRefs": [
|
||
{ "authority": "US", "listId": "OFAC (PEESA)", "date": "2022-02-23", "url": "https://home.treasury.gov/news/press-releases/jy0602" }
|
||
],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.95
|
||
}
|
||
},
|
||
"turkstream": {
|
||
"id": "turkstream",
|
||
"name": "TurkStream",
|
||
"operator": "South Stream Transport B.V. (Gazprom)",
|
||
"commodityType": "gas",
|
||
"fromCountry": "RU",
|
||
"toCountry": "TR",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 31.5,
|
||
"lengthKm": 930,
|
||
"inService": 2020,
|
||
"startPoint": { "lat": 44.95, "lon": 37.32 },
|
||
"endPoint": { "lat": 41.89, "lon": 28.02 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.85
|
||
}
|
||
},
|
||
"yamal-europe": {
|
||
"id": "yamal-europe",
|
||
"name": "Yamal–Europe Pipeline",
|
||
"operator": "Gazprom / EuRoPol GAZ / WinGas",
|
||
"commodityType": "gas",
|
||
"fromCountry": "RU",
|
||
"toCountry": "DE",
|
||
"transitCountries": ["BY", "PL"],
|
||
"capacityBcmYr": 33,
|
||
"lengthKm": 4107,
|
||
"inService": 1999,
|
||
"startPoint": { "lat": 66.52, "lon": 66.60 },
|
||
"endPoint": { "lat": 52.27, "lon": 14.64 },
|
||
"evidence": {
|
||
"physicalState": "offline",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": null,
|
||
"commercialState": "expired",
|
||
"sanctionRefs": [
|
||
{ "authority": "Poland", "listId": "Retaliatory counter-sanctions on EuRoPol GAZ", "date": "2022-04-26", "url": "https://www.gov.pl/web/aktywa-panstwowe/" }
|
||
],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.9
|
||
}
|
||
},
|
||
"brotherhood-soyuz": {
|
||
"id": "brotherhood-soyuz",
|
||
"name": "Brotherhood & Soyuz (Transit via Ukraine)",
|
||
"operator": "Gazprom / Naftogaz",
|
||
"commodityType": "gas",
|
||
"fromCountry": "RU",
|
||
"toCountry": "SK",
|
||
"transitCountries": ["UA"],
|
||
"capacityBcmYr": 142,
|
||
"lengthKm": 4451,
|
||
"inService": 1983,
|
||
"startPoint": { "lat": 58.00, "lon": 56.00 },
|
||
"endPoint": { "lat": 48.60, "lon": 22.14 },
|
||
"evidence": {
|
||
"physicalState": "offline",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": {
|
||
"text": "Ukraine transit contract expired 2024-12-31; Naftogaz did not renew.",
|
||
"url": "https://www.naftogaz.com/en/news",
|
||
"date": "2025-01-01"
|
||
},
|
||
"commercialState": "expired",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.92
|
||
}
|
||
},
|
||
"power-of-siberia": {
|
||
"id": "power-of-siberia",
|
||
"name": "Power of Siberia",
|
||
"operator": "Gazprom / CNPC",
|
||
"commodityType": "gas",
|
||
"fromCountry": "RU",
|
||
"toCountry": "CN",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 38,
|
||
"lengthKm": 3000,
|
||
"inService": 2019,
|
||
"startPoint": { "lat": 62.45, "lon": 129.73 },
|
||
"endPoint": { "lat": 49.58, "lon": 127.52 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.9
|
||
}
|
||
},
|
||
"dolphin": {
|
||
"id": "dolphin",
|
||
"name": "Dolphin Gas Pipeline",
|
||
"operator": "Dolphin Energy Ltd",
|
||
"commodityType": "gas",
|
||
"fromCountry": "QA",
|
||
"toCountry": "AE",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 20.4,
|
||
"lengthKm": 364,
|
||
"inService": 2007,
|
||
"startPoint": { "lat": 25.90, "lon": 51.50 },
|
||
"endPoint": { "lat": 24.47, "lon": 54.37 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.92
|
||
}
|
||
},
|
||
"medgaz": {
|
||
"id": "medgaz",
|
||
"name": "Medgaz",
|
||
"operator": "Medgaz S.A. (Sonatrach / Naturgy)",
|
||
"commodityType": "gas",
|
||
"fromCountry": "DZ",
|
||
"toCountry": "ES",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 10.5,
|
||
"lengthKm": 757,
|
||
"inService": 2011,
|
||
"startPoint": { "lat": 35.67, "lon": -0.64 },
|
||
"endPoint": { "lat": 36.73, "lon": -2.59 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.9
|
||
}
|
||
},
|
||
"tap": {
|
||
"id": "tap",
|
||
"name": "Trans-Adriatic Pipeline (TAP)",
|
||
"operator": "TAP AG",
|
||
"commodityType": "gas",
|
||
"fromCountry": "TR",
|
||
"toCountry": "IT",
|
||
"transitCountries": ["GR", "AL"],
|
||
"capacityBcmYr": 10,
|
||
"lengthKm": 878,
|
||
"inService": 2020,
|
||
"startPoint": { "lat": 40.91, "lon": 26.27 },
|
||
"endPoint": { "lat": 40.53, "lon": 17.85 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.92
|
||
}
|
||
},
|
||
"tanap": {
|
||
"id": "tanap",
|
||
"name": "Trans-Anatolian Pipeline (TANAP)",
|
||
"operator": "TANAP Doğalgaz İletim A.Ş.",
|
||
"commodityType": "gas",
|
||
"fromCountry": "AZ",
|
||
"toCountry": "TR",
|
||
"transitCountries": ["GE"],
|
||
"capacityBcmYr": 16,
|
||
"lengthKm": 1850,
|
||
"inService": 2018,
|
||
"startPoint": { "lat": 41.17, "lon": 42.85 },
|
||
"endPoint": { "lat": 40.91, "lon": 26.27 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.9
|
||
}
|
||
},
|
||
"central-asia-china": {
|
||
"id": "central-asia-china",
|
||
"name": "Central Asia–China Gas Pipeline",
|
||
"operator": "CNPC / Turkmengaz / KazTransGas",
|
||
"commodityType": "gas",
|
||
"fromCountry": "TM",
|
||
"toCountry": "CN",
|
||
"transitCountries": ["UZ", "KZ"],
|
||
"capacityBcmYr": 55,
|
||
"lengthKm": 1833,
|
||
"inService": 2009,
|
||
"startPoint": { "lat": 40.00, "lon": 62.50 },
|
||
"endPoint": { "lat": 42.88, "lon": 80.20 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.88
|
||
}
|
||
},
|
||
"langeled": {
|
||
"id": "langeled",
|
||
"name": "Langeled",
|
||
"operator": "Gassco",
|
||
"commodityType": "gas",
|
||
"fromCountry": "NO",
|
||
"toCountry": "GB",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 25.5,
|
||
"lengthKm": 1166,
|
||
"inService": 2006,
|
||
"startPoint": { "lat": 64.82, "lon": 6.70 },
|
||
"endPoint": { "lat": 53.71, "lon": -0.31 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.95
|
||
}
|
||
},
|
||
"europipe-1": {
|
||
"id": "europipe-1",
|
||
"name": "Europipe I",
|
||
"operator": "Gassco",
|
||
"commodityType": "gas",
|
||
"fromCountry": "NO",
|
||
"toCountry": "DE",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 16,
|
||
"lengthKm": 620,
|
||
"inService": 1995,
|
||
"startPoint": { "lat": 56.55, "lon": 3.22 },
|
||
"endPoint": { "lat": 53.50, "lon": 7.12 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.95
|
||
}
|
||
},
|
||
"europipe-2": {
|
||
"id": "europipe-2",
|
||
"name": "Europipe II",
|
||
"operator": "Gassco",
|
||
"commodityType": "gas",
|
||
"fromCountry": "NO",
|
||
"toCountry": "DE",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 24,
|
||
"lengthKm": 658,
|
||
"inService": 1999,
|
||
"startPoint": { "lat": 58.85, "lon": 2.07 },
|
||
"endPoint": { "lat": 53.50, "lon": 7.12 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.95
|
||
}
|
||
},
|
||
"franpipe": {
|
||
"id": "franpipe",
|
||
"name": "Franpipe",
|
||
"operator": "Gassco",
|
||
"commodityType": "gas",
|
||
"fromCountry": "NO",
|
||
"toCountry": "FR",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 19.2,
|
||
"lengthKm": 840,
|
||
"inService": 1998,
|
||
"startPoint": { "lat": 56.54, "lon": 3.22 },
|
||
"endPoint": { "lat": 51.08, "lon": 2.35 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.95
|
||
}
|
||
},
|
||
"zeepipe": {
|
||
"id": "zeepipe",
|
||
"name": "Zeepipe",
|
||
"operator": "Gassco",
|
||
"commodityType": "gas",
|
||
"fromCountry": "NO",
|
||
"toCountry": "BE",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 15,
|
||
"lengthKm": 814,
|
||
"inService": 1993,
|
||
"startPoint": { "lat": 60.62, "lon": 3.33 },
|
||
"endPoint": { "lat": 51.33, "lon": 3.20 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.95
|
||
}
|
||
},
|
||
"interconnector-uk-be": {
|
||
"id": "interconnector-uk-be",
|
||
"name": "Interconnector UK–Belgium",
|
||
"operator": "Interconnector (UK) Limited",
|
||
"commodityType": "gas",
|
||
"fromCountry": "GB",
|
||
"toCountry": "BE",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 25.5,
|
||
"lengthKm": 235,
|
||
"inService": 1998,
|
||
"startPoint": { "lat": 52.08, "lon": 1.67 },
|
||
"endPoint": { "lat": 51.33, "lon": 3.20 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.92
|
||
}
|
||
},
|
||
"bbl": {
|
||
"id": "bbl",
|
||
"name": "BBL (Balgzand–Bacton Line)",
|
||
"operator": "BBL Company",
|
||
"commodityType": "gas",
|
||
"fromCountry": "NL",
|
||
"toCountry": "GB",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 19,
|
||
"lengthKm": 235,
|
||
"inService": 2006,
|
||
"startPoint": { "lat": 52.93, "lon": 4.83 },
|
||
"endPoint": { "lat": 52.85, "lon": 1.45 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.92
|
||
}
|
||
},
|
||
"transmed": {
|
||
"id": "transmed",
|
||
"name": "Trans-Mediterranean (Enrico Mattei)",
|
||
"operator": "Sonatrach / Eni",
|
||
"commodityType": "gas",
|
||
"fromCountry": "DZ",
|
||
"toCountry": "IT",
|
||
"transitCountries": ["TN"],
|
||
"capacityBcmYr": 33.5,
|
||
"lengthKm": 2475,
|
||
"inService": 1983,
|
||
"startPoint": { "lat": 31.67, "lon": 5.02 },
|
||
"endPoint": { "lat": 37.63, "lon": 12.73 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.92
|
||
}
|
||
},
|
||
"greenstream": {
|
||
"id": "greenstream",
|
||
"name": "Greenstream",
|
||
"operator": "Eni / Mellitah Oil & Gas",
|
||
"commodityType": "gas",
|
||
"fromCountry": "LY",
|
||
"toCountry": "IT",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 8,
|
||
"lengthKm": 520,
|
||
"inService": 2004,
|
||
"startPoint": { "lat": 32.60, "lon": 12.47 },
|
||
"endPoint": { "lat": 37.12, "lon": 14.28 },
|
||
"evidence": {
|
||
"physicalState": "reduced",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": "Libya supply constrained since 2011 civil conflict; Eni/Mellitah flows reportedly well below 8 Bcm/yr nameplate per Reuters and Eni operator statements (2020-2024).",
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.78
|
||
}
|
||
},
|
||
"meg-maghreb-europe": {
|
||
"id": "meg-maghreb-europe",
|
||
"name": "Maghreb–Europe Gas Pipeline (GME)",
|
||
"operator": "Metragaz / Enagás",
|
||
"commodityType": "gas",
|
||
"fromCountry": "DZ",
|
||
"toCountry": "ES",
|
||
"transitCountries": ["MA"],
|
||
"capacityBcmYr": 12,
|
||
"lengthKm": 1620,
|
||
"inService": 1996,
|
||
"startPoint": { "lat": 32.13, "lon": -0.67 },
|
||
"endPoint": { "lat": 36.15, "lon": -5.45 },
|
||
"evidence": {
|
||
"physicalState": "offline",
|
||
"physicalStateSource": "regulator",
|
||
"operatorStatement": {
|
||
"text": "Contract not renewed Oct 2021; pipeline closed between Algeria and Morocco amid diplomatic dispute.",
|
||
"url": "https://www.energy.gov.dz/",
|
||
"date": "2021-10-31"
|
||
},
|
||
"commercialState": "expired",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.9
|
||
}
|
||
},
|
||
"igb": {
|
||
"id": "igb",
|
||
"name": "Interconnector Greece–Bulgaria (IGB)",
|
||
"operator": "ICGB",
|
||
"commodityType": "gas",
|
||
"fromCountry": "GR",
|
||
"toCountry": "BG",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 3,
|
||
"lengthKm": 182,
|
||
"inService": 2022,
|
||
"startPoint": { "lat": 40.93, "lon": 25.14 },
|
||
"endPoint": { "lat": 42.15, "lon": 24.75 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.9
|
||
}
|
||
},
|
||
"arab-gas-pipeline": {
|
||
"id": "arab-gas-pipeline",
|
||
"name": "Arab Gas Pipeline",
|
||
"operator": "Arab Gas Pipeline Consortium",
|
||
"commodityType": "gas",
|
||
"fromCountry": "EG",
|
||
"toCountry": "LB",
|
||
"transitCountries": ["JO", "SY"],
|
||
"capacityBcmYr": 10.3,
|
||
"lengthKm": 1200,
|
||
"inService": 2003,
|
||
"startPoint": { "lat": 31.33, "lon": 32.28 },
|
||
"endPoint": { "lat": 34.27, "lon": 35.67 },
|
||
"evidence": {
|
||
"physicalState": "offline",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": null,
|
||
"commercialState": "suspended",
|
||
"sanctionRefs": [
|
||
{ "authority": "US", "listId": "Caesar Act (Syria)", "date": "2020-06-17", "url": "https://www.congress.gov/bill/116th-congress/house-bill/31" }
|
||
],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.85
|
||
}
|
||
},
|
||
"blue-stream": {
|
||
"id": "blue-stream",
|
||
"name": "Blue Stream",
|
||
"operator": "Gazprom / Eni (Blue Stream Pipeline Company)",
|
||
"commodityType": "gas",
|
||
"fromCountry": "RU",
|
||
"toCountry": "TR",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 16,
|
||
"lengthKm": 1213,
|
||
"inService": 2003,
|
||
"startPoint": { "lat": 44.72, "lon": 37.75 },
|
||
"endPoint": { "lat": 41.05, "lon": 34.58 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [
|
||
{ "authority": "EU", "listId": "2022/1269 (energy sanctions package 8)", "date": "2022-10-06", "url": "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32022R1269" }
|
||
],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.9
|
||
}
|
||
},
|
||
"west-east-3": {
|
||
"id": "west-east-3",
|
||
"name": "West–East Gas Pipeline 3 (China)",
|
||
"operator": "PetroChina",
|
||
"commodityType": "gas",
|
||
"fromCountry": "CN",
|
||
"toCountry": "CN",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 30,
|
||
"lengthKm": 7378,
|
||
"inService": 2014,
|
||
"startPoint": { "lat": 42.95, "lon": 80.35 },
|
||
"endPoint": { "lat": 26.08, "lon": 119.30 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.88
|
||
}
|
||
},
|
||
"myanmar-china-gas": {
|
||
"id": "myanmar-china-gas",
|
||
"name": "Myanmar–China Gas Pipeline (Shwe)",
|
||
"operator": "South East Asia Gas Pipeline Company (CNPC-led)",
|
||
"commodityType": "gas",
|
||
"fromCountry": "MM",
|
||
"toCountry": "CN",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 12,
|
||
"lengthKm": 793,
|
||
"inService": 2013,
|
||
"startPoint": { "lat": 20.15, "lon": 93.53 },
|
||
"endPoint": { "lat": 24.45, "lon": 98.58 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.85
|
||
}
|
||
},
|
||
"wagp": {
|
||
"id": "wagp",
|
||
"name": "West African Gas Pipeline (WAGP)",
|
||
"operator": "WAPCo (Chevron-led consortium)",
|
||
"commodityType": "gas",
|
||
"fromCountry": "NG",
|
||
"toCountry": "GH",
|
||
"transitCountries": ["BJ", "TG"],
|
||
"capacityBcmYr": 5,
|
||
"lengthKm": 678,
|
||
"inService": 2010,
|
||
"startPoint": { "lat": 6.35, "lon": 3.38 },
|
||
"endPoint": { "lat": 5.10, "lon": -1.27 },
|
||
"evidence": {
|
||
"physicalState": "reduced",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": "Chronic feedgas shortages from Nigerian domestic demand + recurring vandalism of Escravos-Lagos feeder have kept WAGP throughput intermittent since 2012 per GhanaWeb / Reuters coverage and operator WAPCo status notices.",
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.78
|
||
}
|
||
},
|
||
"gasbol": {
|
||
"id": "gasbol",
|
||
"name": "Bolivia–Brazil Gas Pipeline (GASBOL)",
|
||
"operator": "TBG / GTB",
|
||
"commodityType": "gas",
|
||
"fromCountry": "BO",
|
||
"toCountry": "BR",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 11,
|
||
"lengthKm": 3150,
|
||
"inService": 1999,
|
||
"startPoint": { "lat": -18.85, "lon": -57.85 },
|
||
"endPoint": { "lat": -29.95, "lon": -51.13 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.9
|
||
}
|
||
},
|
||
"vesterled": {
|
||
"id": "vesterled",
|
||
"name": "Vesterled",
|
||
"operator": "Gassco",
|
||
"commodityType": "gas",
|
||
"fromCountry": "NO",
|
||
"toCountry": "GB",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 13,
|
||
"lengthKm": 363,
|
||
"inService": 2001,
|
||
"startPoint": { "lat": 59.90, "lon": 1.85 },
|
||
"endPoint": { "lat": 57.60, "lon": -1.80 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.92
|
||
}
|
||
},
|
||
"cats": {
|
||
"id": "cats",
|
||
"name": "Central Area Transmission System (CATS)",
|
||
"operator": "Kellas Midstream",
|
||
"commodityType": "gas",
|
||
"fromCountry": "GB",
|
||
"toCountry": "GB",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 9.6,
|
||
"lengthKm": 404,
|
||
"inService": 1993,
|
||
"startPoint": { "lat": 57.83, "lon": 0.90 },
|
||
"endPoint": { "lat": 54.63, "lon": -1.17 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.9
|
||
}
|
||
},
|
||
"iran-turkey-gas": {
|
||
"id": "iran-turkey-gas",
|
||
"name": "Iran–Turkey Gas Pipeline (Tabriz–Ankara)",
|
||
"operator": "NIGC / BOTAŞ",
|
||
"commodityType": "gas",
|
||
"fromCountry": "IR",
|
||
"toCountry": "TR",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 14,
|
||
"lengthKm": 2577,
|
||
"inService": 2001,
|
||
"startPoint": { "lat": 38.08, "lon": 46.30 },
|
||
"endPoint": { "lat": 39.92, "lon": 32.85 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [
|
||
{ "authority": "US", "listId": "OFAC Iran energy sanctions framework", "date": "2018-08-07", "url": "https://home.treasury.gov/policy-issues/financial-sanctions/sanctions-programs-and-country-information/iran-sanctions" }
|
||
],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.85
|
||
}
|
||
},
|
||
"iran-armenia-gas": {
|
||
"id": "iran-armenia-gas",
|
||
"name": "Iran–Armenia Gas Pipeline",
|
||
"operator": "Gazprom Armenia",
|
||
"commodityType": "gas",
|
||
"fromCountry": "IR",
|
||
"toCountry": "AM",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 2.3,
|
||
"lengthKm": 140,
|
||
"inService": 2007,
|
||
"startPoint": { "lat": 38.92, "lon": 46.08 },
|
||
"endPoint": { "lat": 39.33, "lon": 45.35 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [
|
||
{ "authority": "US", "listId": "OFAC Iran energy sanctions framework", "date": "2018-08-07", "url": "https://home.treasury.gov/policy-issues/financial-sanctions/sanctions-programs-and-country-information/iran-sanctions" }
|
||
],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.82
|
||
}
|
||
},
|
||
"iran-iraq-basra-gas": {
|
||
"id": "iran-iraq-basra-gas",
|
||
"name": "Iran–Iraq Gas Pipeline (Basra line)",
|
||
"operator": "NIGC / Iraq Ministry of Electricity",
|
||
"commodityType": "gas",
|
||
"fromCountry": "IR",
|
||
"toCountry": "IQ",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 9,
|
||
"lengthKm": 270,
|
||
"inService": 2017,
|
||
"startPoint": { "lat": 31.35, "lon": 48.67 },
|
||
"endPoint": { "lat": 30.50, "lon": 47.80 },
|
||
"evidence": {
|
||
"physicalState": "reduced",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [
|
||
{ "authority": "US", "listId": "OFAC Iran energy sanctions framework (US waivers intermittent)", "date": "2018-08-07", "url": "https://home.treasury.gov/policy-issues/financial-sanctions/sanctions-programs-and-country-information/iran-sanctions" }
|
||
],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.78
|
||
}
|
||
},
|
||
"central-asia-center": {
|
||
"id": "central-asia-center",
|
||
"name": "Central Asia–Center (CAC)",
|
||
"operator": "Gazprom / TürkmenGaz",
|
||
"commodityType": "gas",
|
||
"fromCountry": "TM",
|
||
"toCountry": "RU",
|
||
"transitCountries": ["UZ", "KZ"],
|
||
"capacityBcmYr": 44,
|
||
"lengthKm": 5000,
|
||
"inService": 1967,
|
||
"startPoint": { "lat": 40.80, "lon": 54.02 },
|
||
"endPoint": { "lat": 51.53, "lon": 45.72 },
|
||
"evidence": {
|
||
"physicalState": "reduced",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": "Gazprom terminated Turkmen imports in 2016 over price dispute; limited 2019+ reactivation at well below nameplate per Reuters and TASS coverage.",
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.75
|
||
}
|
||
},
|
||
"south-caucasus-scp": {
|
||
"id": "south-caucasus-scp",
|
||
"name": "South Caucasus Pipeline (SCP / Baku–Tbilisi–Erzurum)",
|
||
"operator": "BP (South Caucasus Pipeline Company)",
|
||
"commodityType": "gas",
|
||
"fromCountry": "AZ",
|
||
"toCountry": "TR",
|
||
"transitCountries": ["GE"],
|
||
"capacityBcmYr": 22,
|
||
"lengthKm": 692,
|
||
"inService": 2006,
|
||
"startPoint": { "lat": 40.37, "lon": 50.25 },
|
||
"endPoint": { "lat": 39.90, "lon": 41.27 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.92
|
||
}
|
||
},
|
||
"west-east-1": {
|
||
"id": "west-east-1",
|
||
"name": "West–East Gas Pipeline 1 (China)",
|
||
"operator": "PetroChina",
|
||
"commodityType": "gas",
|
||
"fromCountry": "CN",
|
||
"toCountry": "CN",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 17,
|
||
"lengthKm": 4200,
|
||
"inService": 2004,
|
||
"startPoint": { "lat": 39.47, "lon": 84.98 },
|
||
"endPoint": { "lat": 31.23, "lon": 121.47 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.88
|
||
}
|
||
},
|
||
"west-east-2": {
|
||
"id": "west-east-2",
|
||
"name": "West–East Gas Pipeline 2 (China)",
|
||
"operator": "PetroChina",
|
||
"commodityType": "gas",
|
||
"fromCountry": "CN",
|
||
"toCountry": "CN",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 30,
|
||
"lengthKm": 8700,
|
||
"inService": 2011,
|
||
"startPoint": { "lat": 45.13, "lon": 82.57 },
|
||
"endPoint": { "lat": 22.95, "lon": 113.40 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.88
|
||
}
|
||
},
|
||
"bolivia-argentina-yacuiba": {
|
||
"id": "bolivia-argentina-yacuiba",
|
||
"name": "Bolivia–Argentina Gas Pipeline (GIJA / Yacuiba)",
|
||
"operator": "YPFB / Energía Argentina",
|
||
"commodityType": "gas",
|
||
"fromCountry": "BO",
|
||
"toCountry": "AR",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 7.7,
|
||
"lengthKm": 441,
|
||
"inService": 1972,
|
||
"startPoint": { "lat": -22.02, "lon": -63.67 },
|
||
"endPoint": { "lat": -24.15, "lon": -65.30 },
|
||
"evidence": {
|
||
"physicalState": "reduced",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": "Bolivian upstream output declining since 2018; YPFB-CIESA exports fell from 22 MMcm/d to <14 MMcm/d by 2023 per IEA Gas Market Report + BNamericas coverage.",
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.78
|
||
}
|
||
},
|
||
"antonio-ricaurte": {
|
||
"id": "antonio-ricaurte",
|
||
"name": "Antonio Ricaurte Pipeline (Colombia–Venezuela)",
|
||
"operator": "TGI / PDVSA",
|
||
"commodityType": "gas",
|
||
"fromCountry": "CO",
|
||
"toCountry": "VE",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 5,
|
||
"lengthKm": 224,
|
||
"inService": 2007,
|
||
"startPoint": { "lat": 11.38, "lon": -72.47 },
|
||
"endPoint": { "lat": 10.67, "lon": -71.67 },
|
||
"evidence": {
|
||
"physicalState": "offline",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": {
|
||
"text": "Exports halted 2015; both sides have floated restarts but no flows recorded in recent GIE / industry data.",
|
||
"url": "https://www.tgi.com.co/",
|
||
"date": "2015-08-01"
|
||
},
|
||
"commercialState": "suspended",
|
||
"sanctionRefs": [
|
||
{ "authority": "US", "listId": "OFAC Venezuela/PDVSA sanctions", "date": "2019-01-28", "url": "https://home.treasury.gov/policy-issues/financial-sanctions/sanctions-programs-and-country-information/venezuela-related-sanctions" }
|
||
],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.85
|
||
}
|
||
},
|
||
"saudi-master-gas-system": {
|
||
"id": "saudi-master-gas-system",
|
||
"name": "Saudi Master Gas System",
|
||
"operator": "Saudi Aramco",
|
||
"commodityType": "gas",
|
||
"fromCountry": "SA",
|
||
"toCountry": "SA",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 95,
|
||
"lengthKm": 2400,
|
||
"inService": 1982,
|
||
"startPoint": { "lat": 26.10, "lon": 49.87 },
|
||
"endPoint": { "lat": 22.20, "lon": 39.13 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.9
|
||
}
|
||
},
|
||
"galsi-planned": {
|
||
"id": "galsi-planned",
|
||
"name": "GALSI (Algeria–Sardinia–Italy, planned)",
|
||
"operator": "Enagás / Edison / Sonatrach (consortium paused)",
|
||
"commodityType": "gas",
|
||
"fromCountry": "DZ",
|
||
"toCountry": "IT",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 8,
|
||
"lengthKm": 1470,
|
||
"inService": 0,
|
||
"startPoint": { "lat": 37.12, "lon": 8.83 },
|
||
"endPoint": { "lat": 40.55, "lon": 9.73 },
|
||
"evidence": {
|
||
"physicalState": "unknown",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": {
|
||
"text": "Proposed Algeria–Sardinia–Italy gas pipeline; construction not commenced. Project paused but periodically revived in policy commentary around EU gas diversification.",
|
||
"url": "https://www.edison.it/",
|
||
"date": "2023-01-01"
|
||
},
|
||
"commercialState": "unknown",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.72
|
||
}
|
||
},
|
||
"eastmed-planned": {
|
||
"id": "eastmed-planned",
|
||
"name": "EastMed Pipeline (Israel–Cyprus–Greece, planned)",
|
||
"operator": "IGI Poseidon (DEPA / Edison)",
|
||
"commodityType": "gas",
|
||
"fromCountry": "IL",
|
||
"toCountry": "GR",
|
||
"transitCountries": ["CY"],
|
||
"capacityBcmYr": 10,
|
||
"lengthKm": 1900,
|
||
"inService": 0,
|
||
"startPoint": { "lat": 32.40, "lon": 34.13 },
|
||
"endPoint": { "lat": 38.93, "lon": 21.76 },
|
||
"evidence": {
|
||
"physicalState": "unknown",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": {
|
||
"text": "Proposed East Mediterranean gas pipeline. US withdrew prior political support Jan 2022; EU funding for Greece–Cyprus segment ongoing as an electrical interconnector pivot. Gas pipeline construction not commenced.",
|
||
"url": "https://www.igi-poseidon.com/",
|
||
"date": "2022-01-10"
|
||
},
|
||
"commercialState": "unknown",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.75
|
||
}
|
||
},
|
||
"trans-saharan-planned": {
|
||
"id": "trans-saharan-planned",
|
||
"name": "Trans-Saharan Gas Pipeline (Nigeria–Algeria, planned)",
|
||
"operator": "NNPC / Sonatrach / Sonidep (MoU consortium)",
|
||
"commodityType": "gas",
|
||
"fromCountry": "NG",
|
||
"toCountry": "DZ",
|
||
"transitCountries": ["NE"],
|
||
"capacityBcmYr": 30,
|
||
"lengthKm": 4128,
|
||
"inService": 0,
|
||
"startPoint": { "lat": 9.07, "lon": 7.48 },
|
||
"endPoint": { "lat": 36.75, "lon": 3.05 },
|
||
"evidence": {
|
||
"physicalState": "unknown",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": {
|
||
"text": "MoU signed 2022, revived after MEG closure. Route crosses high-insurgency areas; security and financing unresolved. Construction not commenced on main trunk.",
|
||
"url": "https://nnpcgroup.com/",
|
||
"date": "2022-07-28"
|
||
},
|
||
"commercialState": "unknown",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.65
|
||
}
|
||
},
|
||
"israel-egypt-arish-ashkelon": {
|
||
"id": "israel-egypt-arish-ashkelon",
|
||
"name": "Arish–Ashkelon Pipeline (reverse flow IL→EG)",
|
||
"operator": "EMG / East Gas Company",
|
||
"commodityType": "gas",
|
||
"fromCountry": "IL",
|
||
"toCountry": "EG",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 7,
|
||
"lengthKm": 90,
|
||
"inService": 2020,
|
||
"startPoint": { "lat": 31.67, "lon": 34.58 },
|
||
"endPoint": { "lat": 31.13, "lon": 33.80 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.85
|
||
}
|
||
},
|
||
"turkmenistan-iran-korpeje": {
|
||
"id": "turkmenistan-iran-korpeje",
|
||
"name": "Korpeje–Kurt Kui (Turkmenistan–Iran)",
|
||
"operator": "TürkmenGaz / NIGC",
|
||
"commodityType": "gas",
|
||
"fromCountry": "TM",
|
||
"toCountry": "IR",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 8,
|
||
"lengthKm": 200,
|
||
"inService": 1997,
|
||
"startPoint": { "lat": 39.42, "lon": 54.83 },
|
||
"endPoint": { "lat": 37.47, "lon": 54.67 },
|
||
"evidence": {
|
||
"physicalState": "reduced",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": "Flows suspended Jan 2017 over NIGC/Turkmenistan payment dispute; intermittent partial restart reported by NIGC press office + Reuters.",
|
||
"commercialState": "expired",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.75
|
||
}
|
||
},
|
||
"morocco-nigeria-offshore-planned": {
|
||
"id": "morocco-nigeria-offshore-planned",
|
||
"name": "Nigeria–Morocco Offshore Gas Pipeline (planned)",
|
||
"operator": "NNPC / ONHYM",
|
||
"commodityType": "gas",
|
||
"fromCountry": "NG",
|
||
"toCountry": "MA",
|
||
"transitCountries": ["BJ", "TG", "GH", "CI", "LR", "SL", "GN", "GW", "SN", "MR"],
|
||
"capacityBcmYr": 30,
|
||
"lengthKm": 6800,
|
||
"inService": 0,
|
||
"startPoint": { "lat": 6.35, "lon": 3.38 },
|
||
"endPoint": { "lat": 35.75, "lon": -5.80 },
|
||
"evidence": {
|
||
"physicalState": "unknown",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": {
|
||
"text": "FID not reached; FEED phase complete 2024. Seen as competing vision to the Trans-Saharan overland route. Construction not commenced.",
|
||
"url": "https://nnpcgroup.com/",
|
||
"date": "2024-09-01"
|
||
},
|
||
"commercialState": "unknown",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.6
|
||
}
|
||
},
|
||
"power-of-siberia-2-planned": {
|
||
"id": "power-of-siberia-2-planned",
|
||
"name": "Power of Siberia 2 (planned)",
|
||
"operator": "Gazprom / CNPC",
|
||
"commodityType": "gas",
|
||
"fromCountry": "RU",
|
||
"toCountry": "CN",
|
||
"transitCountries": ["MN"],
|
||
"capacityBcmYr": 50,
|
||
"lengthKm": 6700,
|
||
"inService": 0,
|
||
"startPoint": { "lat": 67.50, "lon": 80.57 },
|
||
"endPoint": { "lat": 43.82, "lon": 125.32 },
|
||
"evidence": {
|
||
"physicalState": "unknown",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": {
|
||
"text": "Mongolia route announced; CNPC has not signed binding capacity contract as of reference date. Project remains a talking point between Gazprom and CNPC without construction on the China-segment trunk.",
|
||
"url": "https://www.gazprom.com/",
|
||
"date": "2024-05-01"
|
||
},
|
||
"commercialState": "unknown",
|
||
"sanctionRefs": [
|
||
{ "authority": "EU", "listId": "2022/1269 (energy sanctions package 8)", "date": "2022-10-06", "url": "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32022R1269" }
|
||
],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.7
|
||
}
|
||
},
|
||
"egypt-jordan-aqaba": {
|
||
"id": "egypt-jordan-aqaba",
|
||
"name": "Egypt–Jordan–Aqaba Gas Pipeline (AGP south leg)",
|
||
"operator": "EGAS / NEPCO",
|
||
"commodityType": "gas",
|
||
"fromCountry": "EG",
|
||
"toCountry": "JO",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 3.5,
|
||
"lengthKm": 390,
|
||
"inService": 2003,
|
||
"startPoint": { "lat": 29.93, "lon": 32.57 },
|
||
"endPoint": { "lat": 29.52, "lon": 35.00 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.82
|
||
}
|
||
},
|
||
"sakarya-black-sea-tr": {
|
||
"id": "sakarya-black-sea-tr",
|
||
"name": "Sakarya Gas Field Pipeline (Turkish Black Sea)",
|
||
"operator": "TPAO",
|
||
"commodityType": "gas",
|
||
"fromCountry": "TR",
|
||
"toCountry": "TR",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 14,
|
||
"lengthKm": 170,
|
||
"inService": 2023,
|
||
"startPoint": { "lat": 42.38, "lon": 31.85 },
|
||
"endPoint": { "lat": 41.27, "lon": 31.40 },
|
||
"evidence": {
|
||
"physicalState": "flowing",
|
||
"physicalStateSource": "operator",
|
||
"operatorStatement": null,
|
||
"commercialState": "under_contract",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.85
|
||
}
|
||
},
|
||
"kirkuk-dohuk-turkey-gas-planned": {
|
||
"id": "kirkuk-dohuk-turkey-gas-planned",
|
||
"name": "Kirkuk–Dohuk–Turkey Gas Pipeline (planned)",
|
||
"operator": "KRG / BOTAŞ (commercial framework TBD)",
|
||
"commodityType": "gas",
|
||
"fromCountry": "IQ",
|
||
"toCountry": "TR",
|
||
"transitCountries": [],
|
||
"capacityBcmYr": 10,
|
||
"lengthKm": 430,
|
||
"inService": 0,
|
||
"startPoint": { "lat": 35.47, "lon": 44.40 },
|
||
"endPoint": { "lat": 37.07, "lon": 37.33 },
|
||
"evidence": {
|
||
"physicalState": "unknown",
|
||
"physicalStateSource": "press",
|
||
"operatorStatement": {
|
||
"text": "Proposed northern Iraq gas corridor into Turkey; subject to Baghdad–Erbil revenue dispute and Turkey's existing IGAT/SCP capacity. Construction not commenced.",
|
||
"url": "https://www.botas.gov.tr/",
|
||
"date": "2024-02-01"
|
||
},
|
||
"commercialState": "unknown",
|
||
"sanctionRefs": [],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z",
|
||
"classifierVersion": "v1",
|
||
"classifierConfidence": 0.62
|
||
}
|
||
},
|
||
"statpipe": {
|
||
"id": "statpipe", "name": "Statpipe", "operator": "Gassco", "commodityType": "gas",
|
||
"fromCountry": "NO", "toCountry": "NO", "transitCountries": [],
|
||
"capacityBcmYr": 25, "lengthKm": 880, "inService": 1985,
|
||
"startPoint": { "lat": 61.25, "lon": 1.85 }, "endPoint": { "lat": 59.28, "lon": 5.42 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.9 }
|
||
},
|
||
"sleipner-karsto": {
|
||
"id": "sleipner-karsto", "name": "Sleipner–Kårstø", "operator": "Gassco", "commodityType": "gas",
|
||
"fromCountry": "NO", "toCountry": "NO", "transitCountries": [],
|
||
"capacityBcmYr": 12, "lengthKm": 245, "inService": 1993,
|
||
"startPoint": { "lat": 58.37, "lon": 1.90 }, "endPoint": { "lat": 59.28, "lon": 5.42 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.88 }
|
||
},
|
||
"troll-a-gas-pipeline": {
|
||
"id": "troll-a-gas-pipeline", "name": "Troll A – Kollsnes", "operator": "Gassco", "commodityType": "gas",
|
||
"fromCountry": "NO", "toCountry": "NO", "transitCountries": [],
|
||
"capacityBcmYr": 30, "lengthKm": 67, "inService": 1996,
|
||
"startPoint": { "lat": 60.65, "lon": 3.72 }, "endPoint": { "lat": 60.55, "lon": 4.85 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.92 }
|
||
},
|
||
"oseberg-gas-transport": {
|
||
"id": "oseberg-gas-transport", "name": "Oseberg Gas Transport (OGT)", "operator": "Gassco", "commodityType": "gas",
|
||
"fromCountry": "NO", "toCountry": "NO", "transitCountries": [],
|
||
"capacityBcmYr": 9, "lengthKm": 109, "inService": 2000,
|
||
"startPoint": { "lat": 60.48, "lon": 2.82 }, "endPoint": { "lat": 60.55, "lon": 4.85 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.88 }
|
||
},
|
||
"asgard-transport": {
|
||
"id": "asgard-transport", "name": "Åsgard Transport", "operator": "Gassco", "commodityType": "gas",
|
||
"fromCountry": "NO", "toCountry": "NO", "transitCountries": [],
|
||
"capacityBcmYr": 14, "lengthKm": 707, "inService": 2000,
|
||
"startPoint": { "lat": 65.05, "lon": 6.78 }, "endPoint": { "lat": 59.28, "lon": 5.42 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.88 }
|
||
},
|
||
"dampier-bunbury": {
|
||
"id": "dampier-bunbury", "name": "Dampier to Bunbury Natural Gas Pipeline", "operator": "DBNGP WA", "commodityType": "gas",
|
||
"fromCountry": "AU", "toCountry": "AU", "transitCountries": [],
|
||
"capacityBcmYr": 8.6, "lengthKm": 1594, "inService": 1984,
|
||
"startPoint": { "lat": -20.68, "lon": 116.72 }, "endPoint": { "lat": -33.33, "lon": 115.63 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.9 }
|
||
},
|
||
"moomba-sydney": {
|
||
"id": "moomba-sydney", "name": "Moomba–Sydney Pipeline", "operator": "APA Group", "commodityType": "gas",
|
||
"fromCountry": "AU", "toCountry": "AU", "transitCountries": [],
|
||
"capacityBcmYr": 5.5, "lengthKm": 1299, "inService": 1976,
|
||
"startPoint": { "lat": -28.12, "lon": 140.20 }, "endPoint": { "lat": -33.87, "lon": 151.20 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.88 }
|
||
},
|
||
"mozambique-rompco": {
|
||
"id": "mozambique-rompco", "name": "ROMPCO (Mozambique–South Africa)", "operator": "Sasol / CEF / Companhia Moçambicana de Gasoduto", "commodityType": "gas",
|
||
"fromCountry": "MZ", "toCountry": "ZA", "transitCountries": [],
|
||
"capacityBcmYr": 5.5, "lengthKm": 865, "inService": 2004,
|
||
"startPoint": { "lat": -22.93, "lon": 31.33 }, "endPoint": { "lat": -26.20, "lon": 28.02 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.85 }
|
||
},
|
||
"escravos-lagos-gas": {
|
||
"id": "escravos-lagos-gas", "name": "Escravos–Lagos Pipeline System", "operator": "NNPC / Chevron Nigeria", "commodityType": "gas",
|
||
"fromCountry": "NG", "toCountry": "NG", "transitCountries": [],
|
||
"capacityBcmYr": 9, "lengthKm": 342, "inService": 1989,
|
||
"startPoint": { "lat": 5.62, "lon": 5.20 }, "endPoint": { "lat": 6.46, "lon": 3.37 },
|
||
"evidence": { "physicalState": "reduced", "physicalStateSource": "press", "operatorStatement": "Regular pipeline vandalism and NNPC/Chevron force-majeure declarations (2020-2024) per NNPC press releases + Reuters Lagos coverage.", "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.75 }
|
||
},
|
||
"tanzania-mtwara-dar": {
|
||
"id": "tanzania-mtwara-dar", "name": "Mtwara–Dar es Salaam Gas Pipeline", "operator": "TPDC / CPI-CPP consortium", "commodityType": "gas",
|
||
"fromCountry": "TZ", "toCountry": "TZ", "transitCountries": [],
|
||
"capacityBcmYr": 2, "lengthKm": 542, "inService": 2015,
|
||
"startPoint": { "lat": -10.27, "lon": 40.18 }, "endPoint": { "lat": -6.80, "lon": 39.28 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.78 }
|
||
},
|
||
"thailand-malaysia-cakerawala": {
|
||
"id": "thailand-malaysia-cakerawala", "name": "Cakerawala–Pengerang (Thai–Malaysia JDA)", "operator": "Carigali-PTTEPI Operating Company", "commodityType": "gas",
|
||
"fromCountry": "TH", "toCountry": "MY", "transitCountries": [],
|
||
"capacityBcmYr": 14, "lengthKm": 270, "inService": 2005,
|
||
"startPoint": { "lat": 6.78, "lon": 102.75 }, "endPoint": { "lat": 6.43, "lon": 99.67 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.82 }
|
||
},
|
||
"indonesia-singapore-west-natuna": {
|
||
"id": "indonesia-singapore-west-natuna", "name": "West Natuna–Singapore Gas Pipeline", "operator": "ConocoPhillips / SembGas", "commodityType": "gas",
|
||
"fromCountry": "ID", "toCountry": "SG", "transitCountries": [],
|
||
"capacityBcmYr": 3.7, "lengthKm": 656, "inService": 2001,
|
||
"startPoint": { "lat": 3.67, "lon": 108.32 }, "endPoint": { "lat": 1.31, "lon": 103.65 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.82 }
|
||
},
|
||
"indonesia-singapore-grissik-sakra": {
|
||
"id": "indonesia-singapore-grissik-sakra", "name": "Grissik–Sakra Gas Pipeline", "operator": "ConocoPhillips / SembGas", "commodityType": "gas",
|
||
"fromCountry": "ID", "toCountry": "SG", "transitCountries": [],
|
||
"capacityBcmYr": 3.5, "lengthKm": 470, "inService": 2003,
|
||
"startPoint": { "lat": -2.08, "lon": 103.77 }, "endPoint": { "lat": 1.31, "lon": 103.65 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.82 }
|
||
},
|
||
"nel-pipeline-germany": {
|
||
"id": "nel-pipeline-germany", "name": "NEL Pipeline (Nord Stream continuation)", "operator": "Gasunie Deutschland / Fluxys / WIGA", "commodityType": "gas",
|
||
"fromCountry": "DE", "toCountry": "DE", "transitCountries": [],
|
||
"capacityBcmYr": 20, "lengthKm": 440, "inService": 2013,
|
||
"startPoint": { "lat": 54.14, "lon": 13.66 }, "endPoint": { "lat": 52.52, "lon": 7.77 },
|
||
"evidence": { "physicalState": "reduced", "physicalStateSource": "press", "operatorStatement": "Direct Nord Stream 1 continuation; flows reduced to zero post-Sep-2022 sabotage per Gasunie Deutschland operator notice + BBC coverage.", "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.8 }
|
||
},
|
||
"opal-pipeline-germany": {
|
||
"id": "opal-pipeline-germany", "name": "OPAL Pipeline (Nord Stream continuation)", "operator": "OPAL Gastransport (WIGA joint venture)", "commodityType": "gas",
|
||
"fromCountry": "DE", "toCountry": "CZ", "transitCountries": [],
|
||
"capacityBcmYr": 36, "lengthKm": 470, "inService": 2011,
|
||
"startPoint": { "lat": 54.14, "lon": 13.66 }, "endPoint": { "lat": 50.73, "lon": 14.03 },
|
||
"evidence": { "physicalState": "reduced", "physicalStateSource": "press", "operatorStatement": "Direct Nord Stream 1 continuation; flows reduced to zero post-Sep-2022 sabotage per OPAL operator notice + BBC coverage.", "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.8 }
|
||
},
|
||
"eugal-pipeline-germany": {
|
||
"id": "eugal-pipeline-germany", "name": "EUGAL Pipeline (Nord Stream 2 continuation)", "operator": "EUGAL Gastransport consortium", "commodityType": "gas",
|
||
"fromCountry": "DE", "toCountry": "CZ", "transitCountries": [],
|
||
"capacityBcmYr": 55, "lengthKm": 485, "inService": 2020,
|
||
"startPoint": { "lat": 54.14, "lon": 13.66 }, "endPoint": { "lat": 50.73, "lon": 14.03 },
|
||
"evidence": {
|
||
"physicalState": "offline", "physicalStateSource": "press",
|
||
"operatorStatement": {
|
||
"text": "Built to carry Nord Stream 2 volumes into Central/Southern Europe; never reached commercial operation after NS2 certification was halted (Feb 2022) and NS2 was damaged (Sep 2022). Pipeline physically complete but dormant.",
|
||
"url": "https://www.eugal.de/en/",
|
||
"date": "2022-02-22"
|
||
},
|
||
"commercialState": "suspended",
|
||
"sanctionRefs": [
|
||
{ "authority": "EU", "listId": "2022/1269 (energy sanctions package 8)", "date": "2022-10-06", "url": "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32022R1269" }
|
||
],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.88
|
||
}
|
||
},
|
||
"megal-pipeline": {
|
||
"id": "megal-pipeline", "name": "Mid-European Gas Pipeline (MEGAL)", "operator": "GRTgaz Deutschland / OGE", "commodityType": "gas",
|
||
"fromCountry": "DE", "toCountry": "FR", "transitCountries": [],
|
||
"capacityBcmYr": 37, "lengthKm": 1101, "inService": 1980,
|
||
"startPoint": { "lat": 48.93, "lon": 12.35 }, "endPoint": { "lat": 48.28, "lon": 6.97 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.88 }
|
||
},
|
||
"trans-austria-gas": {
|
||
"id": "trans-austria-gas", "name": "Trans Austria Gas Pipeline (TAG)", "operator": "Trans Austria Gasleitung GmbH", "commodityType": "gas",
|
||
"fromCountry": "AT", "toCountry": "IT", "transitCountries": [],
|
||
"capacityBcmYr": 45, "lengthKm": 380, "inService": 1974,
|
||
"startPoint": { "lat": 48.35, "lon": 16.87 }, "endPoint": { "lat": 45.90, "lon": 13.20 },
|
||
"evidence": { "physicalState": "reduced", "physicalStateSource": "press", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [
|
||
{ "authority": "EU", "listId": "2022/1269 (energy sanctions package 8)", "date": "2022-10-06", "url": "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32022R1269" }
|
||
], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.82 }
|
||
},
|
||
"progress-urengoy-uzhhorod": {
|
||
"id": "progress-urengoy-uzhhorod", "name": "Urengoy–Pomary–Uzhhorod (Progress)", "operator": "Gazprom / Naftogaz", "commodityType": "gas",
|
||
"fromCountry": "RU", "toCountry": "SK", "transitCountries": ["UA"],
|
||
"capacityBcmYr": 32, "lengthKm": 4451, "inService": 1984,
|
||
"startPoint": { "lat": 65.97, "lon": 76.55 }, "endPoint": { "lat": 48.62, "lon": 22.30 },
|
||
"evidence": { "physicalState": "offline", "physicalStateSource": "regulator", "operatorStatement": {
|
||
"text": "Ukraine did not renew the 2019 transit agreement; transit via Sudzha halted 1 Jan 2025. Pipeline physically intact; flow zero.",
|
||
"url": "https://naftogaz.com/",
|
||
"date": "2025-01-01"
|
||
}, "commercialState": "expired", "sanctionRefs": [
|
||
{ "authority": "EU", "listId": "2022/1269 (energy sanctions package 8)", "date": "2022-10-06", "url": "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32022R1269" }
|
||
], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.92 }
|
||
},
|
||
"kish-iran-gas": {
|
||
"id": "kish-iran-gas", "name": "Kish Island–Iran Mainland Gas Pipeline", "operator": "NIGC", "commodityType": "gas",
|
||
"fromCountry": "IR", "toCountry": "IR", "transitCountries": [],
|
||
"capacityBcmYr": 2.5, "lengthKm": 42, "inService": 2010,
|
||
"startPoint": { "lat": 26.53, "lon": 53.95 }, "endPoint": { "lat": 27.20, "lon": 53.57 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [
|
||
{ "authority": "US", "listId": "OFAC Iran energy sanctions framework", "date": "2018-08-07", "url": "https://home.treasury.gov/policy-issues/financial-sanctions/sanctions-programs-and-country-information/iran-sanctions" }
|
||
], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.75 }
|
||
},
|
||
"ghana-gas": {
|
||
"id": "ghana-gas", "name": "Ghana Gas Company Pipeline (Atuabo)", "operator": "Ghana National Gas Company", "commodityType": "gas",
|
||
"fromCountry": "GH", "toCountry": "GH", "transitCountries": [],
|
||
"capacityBcmYr": 1.5, "lengthKm": 111, "inService": 2015,
|
||
"startPoint": { "lat": 4.85, "lon": -2.33 }, "endPoint": { "lat": 4.90, "lon": -1.73 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.75 }
|
||
},
|
||
"iran-pakistan-gas-planned": {
|
||
"id": "iran-pakistan-gas-planned", "name": "Iran–Pakistan Gas Pipeline (Peace, Pakistani segment stalled)", "operator": "NIGC / ISGS Pakistan", "commodityType": "gas",
|
||
"fromCountry": "IR", "toCountry": "PK", "transitCountries": [],
|
||
"capacityBcmYr": 11, "lengthKm": 1931, "inService": 0,
|
||
"startPoint": { "lat": 25.62, "lon": 60.90 }, "endPoint": { "lat": 25.00, "lon": 67.03 },
|
||
"evidence": {
|
||
"physicalState": "unknown", "physicalStateSource": "press",
|
||
"operatorStatement": {
|
||
"text": "Iranian segment completed to border 2013. Pakistani segment stalled since 2014 amid US sanction risk on completion; NIOC served arbitration notice 2023. Pipeline not operational end-to-end.",
|
||
"url": "https://isgs.gov.pk/",
|
||
"date": "2024-02-01"
|
||
},
|
||
"commercialState": "expired",
|
||
"sanctionRefs": [
|
||
{ "authority": "US", "listId": "OFAC Iran energy sanctions framework (applied to Pakistani completion)", "date": "2018-08-07", "url": "https://home.treasury.gov/policy-issues/financial-sanctions/sanctions-programs-and-country-information/iran-sanctions" }
|
||
],
|
||
"lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.8
|
||
}
|
||
},
|
||
"gascade-jagal": {
|
||
"id": "gascade-jagal", "name": "JAGAL (North German gas link)", "operator": "GASCADE", "commodityType": "gas",
|
||
"fromCountry": "DE", "toCountry": "DE", "transitCountries": [],
|
||
"capacityBcmYr": 16, "lengthKm": 340, "inService": 1999,
|
||
"startPoint": { "lat": 53.87, "lon": 14.27 }, "endPoint": { "lat": 51.87, "lon": 10.57 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.8 }
|
||
},
|
||
"zeelink-germany": {
|
||
"id": "zeelink-germany", "name": "ZEELINK (H-gas conversion pipeline)", "operator": "OGE / Thyssengas", "commodityType": "gas",
|
||
"fromCountry": "BE", "toCountry": "DE", "transitCountries": [],
|
||
"capacityBcmYr": 10, "lengthKm": 216, "inService": 2021,
|
||
"startPoint": { "lat": 51.33, "lon": 3.20 }, "endPoint": { "lat": 50.33, "lon": 7.57 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.85 }
|
||
},
|
||
"china-hong-kong-gas": {
|
||
"id": "china-hong-kong-gas", "name": "Mainland–Hong Kong Gas Pipeline", "operator": "CNOOC Gas & Power / Towngas", "commodityType": "gas",
|
||
"fromCountry": "CN", "toCountry": "HK", "transitCountries": [],
|
||
"capacityBcmYr": 2.5, "lengthKm": 92, "inService": 2006,
|
||
"startPoint": { "lat": 22.68, "lon": 113.83 }, "endPoint": { "lat": 22.35, "lon": 114.18 },
|
||
"evidence": { "physicalState": "flowing", "physicalStateSource": "operator", "operatorStatement": null, "commercialState": "under_contract", "sanctionRefs": [], "lastEvidenceUpdate": "2026-04-22T00:00:00Z", "classifierVersion": "v1", "classifierConfidence": 0.8 }
|
||
}
|
||
}
|
||
}
|