landtrendr-recovery
Where did the forest change, what year, and how is recovery going — the Kennedy recovery-questions deliverable (sdk/011, signed I5+I6) on one LandTrendr-segmented NBR trajectory. Runs OFFLINE end to end on a vendored real annual-NBR stack (Landsat C2 L2, 2021 Bootleg Fire bbox, 8 years 2017-2024) via local://, so it reproduces on a laptop with no network. Three layers answer the three questions from the SAME fitted trajectory: WHERE — compute/loss-2021: windowed LandTrendr loss magnitude around the fire year (landtrendr_loss_window recovers a multi-year disturbance the single-year read under-reports). WHEN — compute/landtrendr band 1 (onset year): the largest-loss year per pixel. HOW — compute/recovery-2024: the fitted NBR change in the last year (landtrendr_ftvdiff, target 2024) — positive = regrowth, ~0 = static. The cloud/at-scale variant swaps source/nbr for an imagery_composite over @usgs/landsat/ c2-l2 (see registry/recipes/landtrendr-change); the ops and question-framing are identical.
- recipe
- Apache-2.0
- outputs
- CC-BY-4.0
The contract
Read from this recipe's own declarations — parameters:,
outputs:, requires:, and the ops its layers name. Not from its
style blocks and not from any benchmark: a colour ramp is not a contract, and a measured
run is evidence about one AOI rather than a domain.
Parameters
The legacy dialect has no typed parameter schema. Read the folia.yaml for what this recipe takes; nothing here can type-check it.
Outputs
The legacy dialect lists output names without a declared kind, so there is no output contract to render. The names appear on the card above.
Capabilities it requires
The legacy dialect has no requires: block.
Where it runs
- Browser preview does not run here compute/landtrendr: depends on layer "source/nbr", which cannot run here; compute/loss-2021: op "landtrendr_loss_window" has no browser kernel; compute/recovery-2024: op "landtrendr_ftvdiff" has no browser kernel; and 1 more
- Local CLI (folia run) runs here runs locally through the legacy (no spec_version) parser
- Operated fleet (POST /plan, /run) runs here legacy dialect: a lock binds by the cut's layer names, not by digest
registry/recipes/landtrendr-recovery/folia.yaml