cert-machine · HarborProof · first light — FuelEU Maritime, first live compliance year

Re-sail the fleet's real year under the rule, and decide it

Replay a real year of operations under the rule that is in force, and get a verdict with a proof, not a forecast. Every ship in the official EU-MRV registry of 2025 — the first year FuelEU Maritime penalties exist — is re-fueled on paper under the regulation's own published arithmetic, in exact rationals over stated boxes: compliant by a margin, non-compliant with an exact penalty floor in EUR, or NEEDS DATA where the public record's own opacity leaves the verdict open. Nothing here is an estimate; where an estimate would be needed, the instrument refuses instead.

tl;dr
  • The finding. All three of the regulation's own default oil rows sit ABOVE the limit that is live right now — an oil-only ship cannot comply with FuelEU by construction — and this page prices that exactly: the 12,620 registry ships whose 2025 reports are consistent with oil-only operation carry a penalty-exposure floor of EUR 1,190.7M on the year they already sailed, growing to EUR 3,308.3M re-sailed unchanged under 2030 — with the exact zero-WtW blend fraction that flips each ship computed per ship (median 6.31%).
  • The mechanism. the official per-ship registry (verified annual fuel + CO2eq, sha-pinned) × Regulation (EU) 2023/1805's own formulas (constants transcribed from pinned OJ bytes) × exact rational interval arithmetic — verdicts decided over the WHOLE stated box, never at a point; boxes that straddle the limit are refused as NEEDS DATA, never guessed.
  • Check it. node instruments/fueleu/battery.js (10 checks, 5 reds) · python3 tools/extract-harbor-proof.py · node tools/build-report-harbor-proof.js
the registry
17,045 ships
EU MRV public emission report, period 2025 v45 — generated 28 Aug 2026, sha-pinned; every number a verified company report, none of them ours
decided
12,620
12,620 fully decided both years over their whole constrained box · 0 straddle a limit · 2,385 outside the oil hypothesis — the maybe-compliant ships, undecidable until their fuel mix is public
2025, the live year
12,620 over
ships whose WHOLE intensity box exceeds the 89.3368 gCO2eq/MJ limit in force right now (0 compliant) — every pinned oil row exceeds it, so oil-only operation is non-compliant by the rule's design
penalty floor, 2025
EUR 1,190.7M
the Annex IV arithmetic summed over the fleet at the FAVORABLE end of every box (floor-rounded cents) — before pooling, banking and borrowing, which are company-level flexibilities
re-sailed under 2030
EUR 3,308.3M
same fleet, same operations, the -6% limit: the exposure floor; the ceiling end of the boxes reaches EUR 3,332.4M
the flip threshold
6.31%
median exact fraction of scope energy that must come from a zero-WtW fuel to comply in 2030 — computed per ship, the disclosure-shaped number the rule is designed to force
§1 · the rule, pinned

A penalty that is a published exact formula

FuelEU Maritime (Regulation (EU) 2023/1805) caps the well-to-wake GHG intensity of the energy a ship uses: the reference value is 91,16 gCO2eq/MJ and the limit steps down -2% from 2025, -6% from 2030, -14,5% from 2035, -31%, -62%, -80% (Art. 4(2)). The compliance balance is (GHGIE_target − GHGIE_actual) × energy (Annex IV A) and the penalty is |CB| / (GHGIE_actual × 41 000) × EUR 2 400 (Annex IV B) — a closed-form function of numbers a company must already report. The first penalty cycle of this rule closed in June 2026: it is in force, not coming.

Every constant used here is transcribed from the pinned Official Journal bytes — corpus/sources/fueleu_reg-2023-1805_oj-l234_2023-09-22.pdf, sha256 492df4f7… — and the GWP factors from the pinned RED II Annex V C(4) (CO2 1 · CH4 25 · N2O 298). The instrument's battery re-derives the limits, a hand-computed penalty and a hand-computed flip threshold from those constants at every build, and a forged intensity one part in 10⁹ over the limit must flip the verdict — no tolerance window exists for an optimizer to land in.

§2 · the data

The fleet's own verified reports, not our measurements

The activity record is the EU-MRV public emission report for period 2025 — 17,045 ships' verifier-checked annual totals: fuel consumed, CO2eq emitted, and the voyage split (intra-EU / inbound / outbound / in-port) that determines FuelEU scope. Version 45, generated 28 August 2026, fetched from the THETIS-MRV public API and pinned: 1b139b29222dd58c…. The build re-hashes the bytes and refuses on drift; the extraction is stdlib Python, keeps every figure as the exact decimal string the registry printed, and is rerunnable in one command.

Nothing about a ship is modeled here: no speed curves, no engine assumptions, no AIS. The energy is the ship's own reported fuel; the scope share is the ship's own reported voyage split. What the registry does not say — which fuel, exactly — enters as a box, and the box is the honest price of the record's opacity.

§2b · the disclosure number

How much clean fuel, exactly — for every ship at once

A verdict tells an owner they fail. This tells them the price of passing: the exact fraction of scope energy that must come from a zero-well-to-wake fuel before the 2030 limit is cleared. It is computed per ship from that ship's own reported numbers, in exact rationals, and it is the number the regulation is designed to force into the open.

0 1,143 2,286 5.59% 6% 6.60% zero-WtW share of scope energy required to comply in 2030 (exact, per ship) ships median 6.32%
12,620 ships, each contributing one exact fraction. The whole fleet lives inside one percentage point — 5.59% to 6.60%, median 6.32%, 10th percentile 5.66% and 90th 6.54% — because what binds these ships is the regulation's own oil rows, not the particulars of how each one sailed. THE SPIKE is the part worth stopping on: 2,286 ships (18% of the decided fleet) land in a single bin 2.3 hundredths of a point wide, and between them they carry only 30 distinct values. Two thousand independent measurements do not do that; a shared default emission factor does. The chart is reading the registry's reporting practice, not the sea.
§3 · the method

Boxes, screens, and refusal — stated in full

The fossil-oil hypothesis. A decided ship is assumed to burn some mix of the regulation's three pinned oil rows (HFO, LFO, MGO): LCV in [0,0405, 0,0427] MJ/g, well-to-tank in [13,2, 14,4] gCO2eq/MJ. Its tank-to-wake intensity is not assumed at all — it is the ship's own reported CO2eq divided by its own reported fuel. A plausibility screen (prune-only, like every screen in this machine) admits the hypothesis only when that ratio sits in [3,10, 3,35] g/g, where the pinned oil rows themselves live; LNG burners, methanol, heavy bio blends and inconsistent reports fall outside and are counted, never decided. 2,385 ships sit there today.

The box is constrained by the ship's own numbers, then decided whole. The reported CO2eq/fuel ratio pins the feasible oil mixes to a one-parameter family, and the intensity extremes of that family sit at two-fuel vertex blends — computed exactly, so each box is tight: it contains every mix consistent with the observation and nothing else. COMPLIANT means every point of the box clears the limit; NON-COMPLIANT means every point exceeds it; a straddling box is NEEDS DATA, never guessed (0 today — the tightened boxes decide everything the screen admits). The undecided mass lives in the 2,385 ships OUTSIDE the oil screen — LNG, methanol, bio blends: precisely the candidates for actual compliance, and precisely the rows the public record cannot yet decide. The per-fuel breakdown FuelEU already makes companies compute would decide every one; NEEDS DATA is this page measuring that opacity. Penalty sums use directed rounding (floors on the floor, ceilings on the ceiling), so the stated exposure range is a theorem under the stated hypotheses, not an estimate.

What this is not. FuelEU compliance is assessed per company with banking, borrowing and pooling; these figures are the raw per-ship Annex IV arithmetic before those flexibilities, under the stated boxes — a mathematically certified counterfactual, not a compliance determination, not a verification statement in the class-society sense, and not legal advice. Scope shares inherit the stated uniform-fuel-mix-across-voyages hypothesis; ice-class and OPS derogations are not applied. Every one of these boundaries is a place the same instrument can sharpen as more of the record becomes public.

§4 · the board

The twenty largest 2030 exposures, decided

Ranked by the FLOOR of the 2030 penalty box — the amount the Annex IV arithmetic yields even at the most favorable end of every stated box. Names and IMO numbers are the registry's own; these are public verified reports, restated under a published formula.

IMOshiptypeFuelEU scope shareintensity box gCO2eq/MJ2025re-sailed 20302030 penalty box [EUR]zero-WtW blend to flip 2030
9351476CRUISE ROMARo-pax ship99.9%[91.73, 91.73]NON-COMPLIANTNON-COMPLIANT[5,965,247, 5,968,050][6.58%, 6.58%]
9837420MSC WORLD EUROPAPassenger ship (Cruise Passenger ship)100.0%[91.43, 91.47]NON-COMPLIANTNON-COMPLIANT[5,908,686, 5,992,305][6.27%, 6.32%]
9319466FINNMAIDRo-pax ship100.0%[91.72, 91.72]NON-COMPLIANTNON-COMPLIANT[4,932,759, 4,937,741][6.57%, 6.57%]
9319442FINNSTARRo-pax ship100.0%[91.72, 91.72]NON-COMPLIANTNON-COMPLIANT[4,712,065, 4,716,262][6.57%, 6.58%]
9349863COLOR MAGICRo-pax ship100.0%[91.61, 91.63]NON-COMPLIANTNON-COMPLIANT[4,670,631, 4,697,206][6.46%, 6.48%]
9336268FINNLADYRo-pax ship100.0%[91.71, 91.71]NON-COMPLIANTNON-COMPLIANT[4,658,412, 4,664,942][6.56%, 6.57%]
9278234COLOR FANTASYRo-pax ship100.0%[91.63, 91.64]NON-COMPLIANTNON-COMPLIANT[4,586,558, 4,609,434][6.48%, 6.50%]
9948592GNV POLARISRo-pax ship99.5%[91.71, 91.71]NON-COMPLIANTNON-COMPLIANT[4,519,505, 4,525,380][6.56%, 6.57%]
9565041BLUE STAR PATMOSRo-pax ship99.9%[91.73, 91.73]NON-COMPLIANTNON-COMPLIANT[4,443,812, 4,445,378][6.59%, 6.59%]
9359791MSC FANTASIAPassenger ship (Cruise Passenger ship)80.8%[91.44, 91.48]NON-COMPLIANTNON-COMPLIANT[4,089,115, 4,143,717][6.29%, 6.33%]
9351490CRUISE EUROPARo-pax ship100.0%[91.68, 91.69]NON-COMPLIANTNON-COMPLIANT[3,844,345, 3,854,800][6.53%, 6.54%]
9359806MSC SPLENDIDAPassenger ship (Cruise Passenger ship)93.8%[91.56, 91.59]NON-COMPLIANTNON-COMPLIANT[3,825,830, 3,856,226][6.41%, 6.44%]
9424883AZURAPassenger ship (Cruise Passenger ship)97.1%[91.62, 91.63]NON-COMPLIANTNON-COMPLIANT[3,712,017, 3,732,438][6.47%, 6.49%]
9378682SUPERSPEED 2Ro-pax ship99.9%[91.73, 91.73]NON-COMPLIANTNON-COMPLIANT[3,606,045, 3,607,739][6.58%, 6.58%]
9320087MSC MUSICAPassenger ship (Cruise Passenger ship)94.8%[91.62, 91.63]NON-COMPLIANTNON-COMPLIANT[3,596,133, 3,616,103][6.47%, 6.48%]
9803613MSC GRANDIOSAPassenger ship (Cruise Passenger ship)95.5%[91.67, 91.68]NON-COMPLIANTNON-COMPLIANT[3,551,304, 3,561,528][6.53%, 6.54%]
9351505CRUISE SARDEGNARo-pax ship99.9%[91.65, 91.66]NON-COMPLIANTNON-COMPLIANT[3,544,079, 3,557,914][6.50%, 6.52%]
9216028SUPERFAST IIIRo-pax ship100.0%[91.19, 91.23]NON-COMPLIANTNON-COMPLIANT[3,534,602, 3,582,991][6.03%, 6.07%]
9207584BLUE STAR 2Ro-pax ship99.9%[91.53, 91.56]NON-COMPLIANTNON-COMPLIANT[3,392,927, 3,424,662][6.38%, 6.41%]
9216030SUPERFAST IVRo-pax ship100.0%[91.63, 91.65]NON-COMPLIANTNON-COMPLIANT[3,363,901, 3,379,651][6.49%, 6.50%]

The full fleet: 12,620 ships decided in both years · 0 NEEDS DATA (box straddles a limit) · 2,385 outside the fossil-oil screen · 42 with unusable voyage splits · 1,998 with no reported EU-scope activity. Every count is recomputed from the pinned registry at this build.

§5 · what the flip threshold is for

The rule as an incentive machine, made exact

For every non-compliant ship the instrument computes the exact energy fraction that must come from a zero-well-to-wake fuel for the same operations to comply in 2030 — an interval, because the fuel-type opacity propagates. That number is what a charterer, a lender under the Poseidon Principles, or a fuel supplier actually negotiates about; today it is bought as consultancy estimate. Here it is a computation anyone can rerun, and the same arithmetic generalizes to any candidate fuel intensity — replace zero with the fuel's pinned WtW value and the blend fraction is one exact division away.

This page is first light for the observatory, not its final shape: the roadmap is per-fuel candidate boxes (methanol, ammonia, wind-assist), company-level aggregation with pooling arithmetic, AIS-replay voyage scoping, and committed FORECASTS of next year's margins graded by the Forecast Gym's machinery. The instrument, the pinned rule, and the registry join are the load-bearing parts, and they are live above.