fix: persist terrain temporal identity
GeoIntel release gates / Compile, test, contracts and builds (push) Canceled after 0s
GeoIntel release gates / Python and npm vulnerability policy (push) Canceled after 0s
GeoIntel release gates / GIS image, SBOM and container scan (push) Canceled after 0s

This commit is contained in:
Codex
2026-07-22 08:06:07 +02:00
parent cc1b905ed3
commit e9b48bb95e
4 changed files with 14 additions and 2 deletions
+2 -1
View File
@@ -26,7 +26,8 @@
incorrectly labelling Walloon elevations as TAW.
- Made terrain readiness fail closed on both the source raster and its valid
SHA-256 sidecar, wrote provisioning evidence atomically, and corrected the
persisted acquisition interval to the canonical `period` granularity.
persisted acquisition interval to the canonical `period` granularity with a
stable spatial series key.
- Extended detection-model capabilities with machine-readable training scope,
validation scope, validated regions, national-validation status and the
operator-review requirement. The configured local model remains bound to
@@ -418,6 +418,7 @@ class SpwTerrainService:
content=content,
source="SPW Relief de la Wallonie MNT 2021-2022 operator-provisioned GeoTIFF",
source_name=SpwTerrainService.PROVIDER,
temporal_series_key=f"spw:terrain:mnt:{request_hash[:24]}",
observed_at=datetime(2022, 3, 5, 23, 59, 59, tzinfo=UTC),
valid_from=datetime(2021, 2, 19, tzinfo=UTC),
valid_to=datetime(2022, 3, 5, 23, 59, 59, tzinfo=UTC),
+10
View File
@@ -164,8 +164,18 @@ def test_spw_terrain_acquisition_persists_bounded_dng_raster_and_provenance(
assert captured["source_metadata"]["coverage_zones"] == ["wallonia"]
assert captured["provenance_metadata"]["resampling"] == "bilinear"
assert captured["provenance_metadata"]["source_sha256"] == source_digest
assert captured["temporal_series_key"].startswith("spw:terrain:mnt:")
assert captured["temporal_granularity"] == "period"
assert captured["valid_from"].date().isoformat() == "2021-02-19"
temporal = DatasetService._validate_temporal_metadata(
temporal_series_key=captured["temporal_series_key"],
observed_at=captured["observed_at"],
valid_from=captured["valid_from"],
valid_to=captured["valid_to"],
temporal_granularity=captured["temporal_granularity"],
source_version=captured["source_version"],
)
assert temporal["temporal_granularity"] == "period"
with rasterio.MemoryFile(captured["content"]) as memory:
with memory.open() as derived:
assert derived.crs.to_epsg() == 3812
+1 -1
View File
@@ -11193,7 +11193,7 @@ Implemented and verified:
retained the source raster, checksum sidecar and atomic provisioning report;
- made terrain availability fail closed until both raster and valid SHA-256
sidecar exist, and persisted the official 2021-02-19/2022-03-05 observation
interval using the canonical `period` granularity;
interval using the canonical `period` granularity and spatial series key;
- constrained AI capability claims to the actual Mol/Kempen evidence through
machine-readable training/validation scope, `nationally_validated=false` and
mandatory operator review. No national training result was fabricated.