hydromodpy.results.catalog.protocol#
SimulationStore Protocol for result-catalog backends.
The default in-tree implementation is
hydromodpy.results.catalog.SimulationCatalog, backed by DuckDB
for tabular state and Zarr / Parquet for field arrays and timeseries.
Conforming alternative backends (PostgreSQL, Parquet-only, in-memory for tests, remote object storage) can be plugged behind this same contract without changing the workflow steps that consume it. Implementations conform structurally - no base class to inherit from.
The contract is the minimal write/read surface that workflow steps,
solver adapters, and post-run extractors actually call. Methods absent
from this Protocol stay implementation-specific to SimulationCatalog
(find, rank, archive package_io …).
Classes
|
Minimal write/read contract for a simulation results catalog. |