ALBERTA · ORPHAN WELL ASSOCIATION INVENTORY · SENTINEL-2
Reclamation Evidence Ledger
CALGARY, ALBERTA · SENTINEL-2 DESK
An independent satellite watchdog for Alberta’s orphan wells —
free imagery, an automated pipeline, and one question per site, answered on a schedule:
is the land healing?
99
SITES ASSESSED
13
LICENSEES
21,892
REGISTRY SITES · OWA 2026-09
10 m
SENTINEL-2 PIXEL
~5-day
REVISIT
RENDERED 2026-09-29 13:25 UTC FROM 99 EVIDENCE PACKETS · SCHEMA v1.1.0 · EVERY PACKET VALIDATED ON EACH PUSH TO MAIN
PLATE I
The Instrument Audited Itself
The most important thing this project produced wasn’t a green dashboard — it was a caught mistake.
V1 · SEASONAL MEDIANS
All 27 sites “recovering”
The first change-detection method compared seasonal vegetation medians and reported that every pilot site was healing. A green dashboard. It was wrong.
AUDIT · 2026-09-27
Measuring the calendar
A full audit found the flaw: baseline scenes were sampled in May/June while current scenes were sampled in July. Summer is greener than spring — the method was measuring phenology, not reclamation.
V2 · MONTH-MATCHED
Honest refusals
Rebuilt around month-matched median-of-deltas: each calendar month compared only to itself, ≥2 matched months required, honest refusal otherwise. Under the corrected method most sites show no significant change — and the ledger says so.
Fig. 1 — Verification suite, run against the rebuilt assessor (2026-09-27)
TRACE A · RECOVERY
+0.30
synthetic greening → correctly detected as recovery
TRACE B · NO CHANGE
+0.01
synthetic flatline → correctly held as no significant change
TRACE C · REGRESSION
−0.30
synthetic browning → correctly detected as stalled / regressing
TRACE D · PHENOLOGY TRAP
REFUSED
no overlapping calendar months → assessment refused, not guessed
A watchdog that can’t catch its own errors can’t be trusted to watch anyone else.
PLATE II
Findings — 99 Sites
Pilot-01’s 27 Lexin sites plus Pilot-02’s expansion to 13 licensees. One honest distribution, not 99 green lights.
99
SITES ASSESSED
28
IDENTIFIED CHANGE SIGNAL
71
DETECTED NO SIG. CHANGE
3
IDENTIFIED HIGH CONFIDENCE
12
SITES WITH NO CI PRINTED
Fig. 2 — Distribution of median matched-month NDVI deltas (Δ)
Ledger pipeline v2 month-matched median Δ across all 99 sites; ±0.08 noise band from the pipeline config. Solid bars carry a signal; hatched bars sit inside the noise.
The tier boundary is the ±0.08 noise band from the pipeline config: a median matched-month delta outside it is identified (recovering if positive, stalled/regressing if negative); inside it is detected — something was measured, no signal claimed.
Fig. 3 — Site register (click a row for its dossier)
Site ↕
Licensee ↕
Tier ↕
Conf. ↕
Δ NDVI ↕
95% CI
Matched mo.
Packet
Evidence packets, schema v1.1.0; each row links its packet page with scenes, chips, checksums, and caveats. Click a row for the full dossier.
PLATE III
Site Dossier
One site, full evidence: every scene the claim rests on, the months that were actually compared, and everything the pipeline refused to claim.
PLATE IV
Method — Why Month-Matching
Greenness follows the calendar, not the project. So the ledger never compares July to May.
Fig. 6 — The month-matched comparison (the v1 flaw, and the fix)
Pipeline change.py, month-matched median-of-deltas; the v1 seasonal-median flaw and its fix are documented in Plate I.
Doctrine — borrowed from imagery interpretation tradecraft
Detection
Something changed vs the baseline — a measured delta. The pipeline’s lowest claim, and an honest one.
Identification
The change is consistent with a reclamation signal across multiple observations — a hypothesis, caveats attached.
Attribution
A named party is responsible. Never emitted by code. Requires human review and ground truth. The pipeline stops at identified.
Honest limits
Sentinel-2’s 10 m pixels cannot resolve wellheads or prove contamination, legal compliance, causation, or methane emissions.
Growing season to growing season only (May–Sep). Alberta snow makes winter comparisons meaningless; drought years mimic non-recovery.
Site coordinates are DLS LSD centroids (±300 m); the 500 m analysis buffer absorbs this. This is not a survey of the wellhead.
No interval below four matched months. Bootstrap confidence intervals over matched-month deltas are degenerate at n=2 — the resampled-median distribution has only three distinct values, so the interval looks precise and means almost nothing. Below four matched months the ledger prints no interval rather than a misleading one.
Every public claim carries its claim tier and provenance. No exceptions.
PLATE V
The Ledger Keeps Auditing Itself
After the rebuild, the instrument was stress-tested with a before-after-control-impact (BACI) probe: can a paired control parcel separate weather from reclamation? Twin-first — cheap simulation before any new downloads.
VERDICT · GO — WITH CHANGES
The probe reproduced the pipeline’s month-matched deltas bit-for-bit on four sites, then found five things. Three of them changed the pipeline.
F1 · GEOMETRY
In-chip controls are impossible
The chip is the 500 m assessment buffer — no room inside it for a true control. Real controls need fresh 1.2 km-offset chips.
F2 · HETEROGENEITY
Control selection is the whole game
Baseline NDVI spreads of 0.15–0.20 within one chip swing the result wildly. Proximity alone doesn’t make a valid control — land-cover matching does.
F3 · FIXED IN PIPELINE
Degenerate confidence intervals
At 2 matched months the bootstrap CI looks precise and means nothing. The probe’s fix is now a rule in change.py: no interval printed below 4 matched months.
F4 · ROBUSTNESS
Off-by-one chip dimensions handled
10 of 513 scenes have truncated window dimensions; the pipeline pins bands per-scene, so nothing breaks — verified, not assumed.
F5 · ECONOMY
Sites cluster; controls can be shared
26 of 27 pilot sites have a neighbour within 3 km. One control chip could serve two nearby sites — pending per-pair land-cover validation.
STANDING RULE
Probes before downloads
No download campaign runs until a cheap simulation has found what breaks. The BACI full run — 27 control chips, ~39 MB, under an hour — is greenlit once the land-cover pre-flight is implemented.