Method
How a number is made
The method is public because a number that settles anything has to be checkable by the person it settles it against. What is sold is the operational layer, not the recipe.
The stages
01Ingest
The raw SWOT lake series is fetched from its archive and written to an object store under the run that fetched it. Nothing downstream re-fetches, so a rebuild reads the archive rather than the agency.
02Screen
A reservoir is matched to the registry and to the prior lake database, and a datum sanity screen rejects a series whose elevations cannot belong to the water body they claim.
03Filter
A frozen specification decides which observations survive. The rule, the constants and the version are published together, and a discarded observation stays visible as discarded rather than disappearing.
04Edge
The newest surviving observation becomes the displayed level under a last-value rule, and stays provisional until later passes confirm it.
05Score
Each series gets a calibrated probability that it meets the accuracy rule, computed without reading any gauge at that reservoir. Below its published floor the product states no level and says so.
06Forecast
Where a reservoir’s level cycles by metres, a forecast is published three to four weeks ahead with an 80 percent band and the coverage that band was measured to hold. Where it is not eligible, a persistence band is published with its reason.
07Publish
Every record is stamped with the specification, product and model versions it was computed under, and the publication log keeps what was served on which day.
What is held fixed
The constants in the filter, the edge rule and the scoring model are frozen artefacts rather than settings. Changing one requires a decision record, a fresh held-out draw, a re-score of the labelled set and a version bump, and every published number carries the version it was computed under. That is what lets a contract name a method and hold it fixed for a term.
The constants themselves are not restated on this page. They travel with a record, in its spec_version, so the number and the rule that made it cannot come apart.
How it is validated
Truth validates and never trains. A gauge, an operator record or a bulletin that feeds inference at a reservoir is never the truth at that reservoir, and the code that reads truth is in a package nothing else imports. Folds are drawn by leaving a country out, so a pass rate is a claim about a reservoir the model has not seen rather than a fit.
A reservoir in a country with no public truth gets a transferred error budget rather than a validated one, and its record says which of the two it holds.
Where the inputs come from
Every input is licensed for commercial reuse, with the licence page and the date it was read recorded in the repository. The list below is served by the API rather than written here, so it is the register the product actually ships.