gold_well_forecast_provenance
The audit trail for every well's forecast: one row per well per product stream per forecast generation, recording the cohort the well belongs to, the winning forecast method, the training cutoff, and when it was generated. Join from the forecast months when you need to know which model produced a number.
Access tier: portal
Portal. These rows are well-level or producing-unit-level data, or our modelled output at cohort or grid grain. They open with a Portal, Pro or Enterprise plan. The website shows aggregates built from them, never the rows.
Primary key: well_id, stream
Region codes: ab, ak, al, ar, argentina, bc, brazil, ca, co, gom, ks, la, mb, mexico, mi, ms, mt, nd, nm, oh, ok, pa, pacific, sk, tx, ut, wv, wy
Columns
| Column | Type | Nullable | Description |
|---|---|---|---|
well_id |
string | no | Join key to the well register (gold_wells). Part of the primary key together with stream: one row per well per stream per generation. |
stream |
string | no | The production stream this row's forecast covers: oil or gas. Part of the primary key: a dual-product well has one provenance row per stream.
Values: oil · gas. |
atom_id_hash |
string | yes | Identifier of the cohort the well was forecast under (opaque 12-character code). NULL for wells that fall outside any cohort (the data-quality fallback path). |
champion_method |
string | no | The method that produced this forecast: a decline-curve fit (e.g. arps_hyperbolic) or a machine-learning model (e.g. lgbm_ts_tweedie_monotone, catboost_ts_tweedie_monotone). A double-colon suffix qualifies the method with its variant or sub-path (e.g. lgbm_ts_tweedie_monotone::reanchored, type_curve_approx::in_cohort_terminal). Two reserved prefixes, ml_pending:: and ml_unsupported_serving::, would mark a serving fallback (the cohort's winning model is a machine-learning method but this well's delivered numbers fell back to a decline-curve fit; forecast_tier still reads champion). Neither appears in current data. |
forecast_tier |
string | no | How well-specific the model behind this forecast is, from most to least specific: champion = the backtested winning method for the well's own cohort; type_curve_approx = an approximate forecast from a cohort type curve, used where the well cannot carry its own model (lower confidence: treat as a badge, not a per-well fit); parent_cohort = a type curve from the cohort's parent pool; region_analog = a type curve at region x trajectory x stream level; per_well_dca = the well's own decline-curve fit; cross_region_analog = a type curve borrowed from an analog region (disabled pending a passing backtest: not present in current data); sub_region_formation = reserved for a future serving change (not emitted).
Values: champion · parent_cohort · region_analog · sub_region_formation · per_well_dca · cross_region_analog · type_curve_approx. |
champion_cutoff |
int16 | yes | The training-history cutoff, in months, whose winning method produced this forecast. Chosen per well by age: short-history wells get a short-cutoff model, so wells in the same cohort can carry different cutoffs. NULL for the type-curve fallback tiers (parent_cohort / region_analog / cross_region_analog): no cutoff drove those forecasts. |
well_age_months_at_forecast |
int16 | no | Number of producing months the well had when this forecast was generated. An audit signal: re-forecasting the well later may select a different model as it ages. |
recently_inactive |
boolean | yes | Whether the well had effectively stopped producing this stream at forecast time: it produced in at most one of its most recent three reported months. For such wells the forecast is an expectation that assumes partial resumption, not a claim the well is actively producing; treat the near-term numbers as scenario-weighted. NULL when the well has fewer than three reported months of history. |
generated_at |
timestamp_utc | no | UTC timestamp when this forecast was computed: the forecast's "as of", and the way to detect a stale forecast. |
How these numbers are built is on methodology; the machine twin of this page is data-dictionary.json.