fix: retain WALOUS edition warnings
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 06:37:05 +02:00
parent f543138712
commit 107099c101
3 changed files with 26 additions and 5 deletions
@@ -327,9 +327,10 @@ class TemporalAnalysisService:
warnings = [
"WALOUS-evolutie vergelijkt celgebaseerde landbedekkingsoppervlakten; individuele objectwijzigingen zijn niet beschikbaar.",
]
limitation = str(later_summary.get("warning") or earlier_summary.get("warning") or "").strip()
if limitation:
warnings.append(limitation)
for summary in (earlier_summary, later_summary):
limitation = str(summary.get("warning") or "").strip()
if limitation and limitation not in warnings:
warnings.append(limitation)
return TemporalComparisonResponse(
temporal_series_key=str(earlier.temporal_series_key),
earlier=TemporalDatasetRef(
@@ -497,7 +498,6 @@ class TemporalAnalysisService:
earlier_full_dataset_area: bool = False,
later_full_dataset_area: bool = False,
) -> tuple[TemporalObjectChanges, dict[str, Any], list[str]]:
earlier_config = earlier.source_metadata if isinstance(earlier.source_metadata, dict) else {}
later_config = later.source_metadata if isinstance(later.source_metadata, dict) else {}
earlier_identity = TemporalAnalysisService._identity_contract(earlier)
later_identity = TemporalAnalysisService._identity_contract(later)
@@ -499,7 +499,11 @@ def test_walous_temporal_comparison_reuses_persisted_raster_metrics(
}
],
},
"limitation_message": "Cell-based estimate.",
"limitation_message": (
"2018 crosswalk and methodology limitation."
if dataset_id == earlier.id
else "2023 edition accuracy limitation."
),
}
monkeypatch.setattr(WalousLandCoverService, "analyze", analyze)
@@ -523,6 +527,8 @@ def test_walous_temporal_comparison_reuses_persisted_raster_metrics(
assert result.metric.later_value == 5.5
assert result.metric.absolute_change == 1.5
assert result.object_changes.available is False
assert "2018 crosswalk and methodology limitation." in result.warnings
assert "2023 edition accuracy limitation." in result.warnings
def test_walous_api_routes_use_canonical_envelopes(monkeypatch) -> None:
+15
View File
@@ -3673,6 +3673,21 @@ Validation:
scope, validated regions, national status and the review requirement; the
configured local weights remain bound to Mol/Kempen evidence and fail closed
as not nationally validated.
- Deployed immutable AI image
`geointel-all-in-one:f5431387128d193e6e638818f5641d3410227fd6-ai`;
live health, PostGIS 3.6, Alembic `202607160001`, browser proxy and packaged
SPW terrain provisioner checks passed. The configured YOLO capability now
returns `nationally_validated=false`, `validated_regions=[flanders_mol_kempen]`
and `operator_review_required=true` from the runtime API.
- Live WALOUS 2018 acquisition created Dataset
`572dd6d0-c829-41d4-bf4a-19b6563c3ff0` for the 130.28 km² Wallonia golden
area. All 1,302,769 derived 10 m cells were valid; measured cover included
3,615.39 ha forest/tree cover, 209.84 ha water and 2,315.33 ha artificial
cover. Same-scope 2020/2023 acquisition then produced a three-observation,
seven-metric 2018-2023 comparison without inventing object changes.
- Live comparison exposed that only the later WALOUS limitation was returned.
Temporal responses now retain both edition warnings, ensuring the 2018
crosswalk/methodology caveat survives comparison with 2023.
- Live Tower provisioning exposed an incorrect assumption that 11 WALOUS
classes implied numeric codes 1 through 11. The official SPW legend and the
downloaded 2020 raster confirm codes `1,2,3,4,5,6,7,8,9,80,90`. Corrected