commodity_hindcast — engineer handover¶
commodity_hindcast produces county-level yield hindcasts and forward-looking forecasts for US row crops (corn, soybean, wheat) plus international commodities (Brazilian soy, Indian wheat, Ghanaian cocoa). Each run replays history under a leak-free walk-forward protocol, fits a residual-mode regressor on top of a NASS-trend baseline, applies conformal calibration, and delivers per-init parquet bundles to S3 for downstream client products. See wiki/commodity_hindcast/synthesis/overview.md for the business rationale and downstream consumers.
Three audience tracks¶
Pick the track that matches your role and follow its sequence.
Track 1: User Support (you don't write code; you investigate client questions)¶
data_lineage.md— where every input comes fromrisk_register.md(skim Critical + High only) — what's known to breakrunbook/forecast_per_init.md— how a forecast is producedwiki/commodity_hindcast/concepts/hindcast_vs_forecast.md— the difference between the twocontacts.md— who to escalate to
Track 2: QA / Test (you validate runs and approve releases)¶
runbook/full_hindcast_rerun.md— how a hindcast run is verifiedrunbook/qa_to_prod_sync.md— promotion proceduresignoff.md— the acceptance checklistrisk_register.md(full read) — what to flag during reviewdiagrams/output/risk_heatmap.png— visual
Track 3: Technical (you write code; you debug; you ship)¶
- The 12 explainer-grid panels at
/data/processing/tmp/tmi-explainers/output/ch_*.png— start withch_00_e2e.png decisions/ADR-001throughdecisions/ADR-005— the load-bearing design choices- All 5 runbooks under
runbook/ access.md— every credential and env var you needwiki/domain_model/andwiki/commodity_hindcast/— full reference
Document index¶
| Doc | Purpose | Length |
|---|---|---|
data_lineage.md |
External sources + ResolvablePath fields | ~280 lines |
risk_register.md |
14 risks, severity-ranked | ~250 lines |
5 ADRs under decisions/ |
Retro-documented load-bearing choices | 150-200 lines each |
5 runbooks under runbook/ |
Step-by-step operational procedures | 280-360 lines each |
access.md |
Credentials, env vars, dashboards | ~290 lines |
contacts.md |
RACI scaffold (placeholders) | ~140 lines |
signoff.md |
Acceptance checklist | ~150 lines |
placeholders.md |
Aggregated unknowns | TBD (not yet drafted) |
diagrams/output/*.png |
5 runbook flowcharts + 1 risk heatmap | — |
| 12 explainer panels | Pipeline architecture | — |
The runbook flowcharts live at /data/processing/tmp/tmi-handover/diagrams/output/rb_forecast_per_init.png, rb_full_hindcast_rerun.png, rb_multi_year_forecast.png, rb_qa_to_prod_sync.png, rb_mlflow_db_recovery.png — one per runbook, plus risk_heatmap.png.
Your first day¶
- Read this page.
- Pick your track.
- Run
cli run preflight --config configs/<some-test-key>.yaml— confirms env + AWS access. - Open
signoff.mdand walk through it with the outgoing engineer.
Scope reminder¶
This handover covers commodity_hindcast ONLY. Other models in market_insights_models/ (crop_yield, area_forecast, winter_wheat_area, csb_pipeline) have their own pipelines, owners, and runbooks.
Conventions¶
- All Python invocations use
uv run(never barepython). - All paths are S3-safe via
cloudpathlib.AnyPath. INPUT_DATA_DIRmust be set; the helper raises if missing.- British English throughout.
Status¶
This handover pack was drafted on 2026-05-08 through an Actor/Critic orchestration. See IMPLEMENTATION_PLAN.md for the audit trail and placeholders.md for the unknown items the outgoing engineer needs to fill before sign-off.