Complete regional raster exploration
This commit is contained in:
@@ -257,6 +257,17 @@ in degrees. Area geometry is an exact mask, not only a bounding box.
|
||||
The response always lists `water_depth_m` and `water_volume_m3` under
|
||||
`unsupported_metrics`. Drainage is not calculated by this endpoint.
|
||||
|
||||
### POST `/api/v1/projects/{project_id}/datasets/raster/terrain/select`
|
||||
|
||||
Runs the same exact terrain calculation over every persisted municipal DHMV
|
||||
partition intersecting one bounded EPSG:4326 rectangle. The request adds the
|
||||
governed `product_key` (`dtm_1m` or `dsm_1m`) to the ordinary selection bbox
|
||||
and optional Area id. The backend mosaics only the intersecting windows in
|
||||
EPSG:31370, enforces the existing 12-million-cell limit and calculates global
|
||||
cell statistics. The canonical response includes `dataset_ids` and
|
||||
`partition_count`; percentiles are calculated from the combined cells and are
|
||||
not averages of municipal summaries.
|
||||
|
||||
### GET `/api/v1/projects/{project_id}/datasets/{dataset_id}/raster/terrain/image`
|
||||
|
||||
Returns a browser-safe PNG colour relief for the persisted governed DHMV
|
||||
@@ -316,6 +327,16 @@ it is explicitly not concurrent flood storage, permanent waterbody content,
|
||||
current water level or bathymetry. These unsupported metrics remain listed in
|
||||
the response.
|
||||
|
||||
### POST `/api/v1/projects/{project_id}/datasets/raster/flood-hazard/select`
|
||||
|
||||
Runs exact bounded analysis over the persisted municipal VMM partitions for
|
||||
one governed `product_key`. Only partitions intersecting the selection are
|
||||
opened, the normalized metre grids are combined at their common 5 m analysis
|
||||
resolution and the global area/depth metrics are calculated from the combined
|
||||
cells. The canonical response includes every contributing Dataset id in
|
||||
`dataset_ids` plus `partition_count`. The existing flood-volume and bathymetry
|
||||
prohibitions are unchanged.
|
||||
|
||||
### GET `/api/v1/projects/{project_id}/datasets/{dataset_id}/raster/flood-hazard/image`
|
||||
|
||||
Returns a constrained transparent PNG for a persisted governed VMM flood-depth
|
||||
|
||||
@@ -1,3 +1,52 @@
|
||||
## Sprint 218 Regional terrain and flood completion (2026-07-16)
|
||||
|
||||
Changed:
|
||||
- Added the resumable 28-municipality DHMV DTM/DSM operator and executed all
|
||||
56 governed acquisitions through the canonical API.
|
||||
- Executed all 336 governed VMM mechanism/climate/return-period combinations
|
||||
across the same 28 persisted municipality Areas.
|
||||
- Diagnosed Retie's official WCS integer-grid edge rounding in both providers.
|
||||
Accepted only bounded 5%/0.25 m edge drift, harmonized accepted tiles to the
|
||||
exact requested grid and retained source resolutions, tile indexes and
|
||||
method in provenance. A 4.5 m regression fixture remains rejected.
|
||||
- Added exact partitioned terrain and flood selection routes for bounded
|
||||
rectangles that cross municipality boundaries. They use only persisted
|
||||
GeoTIFFs, calculate global statistics from combined cells and retain the
|
||||
contributing Dataset ids in the response.
|
||||
- Made the complete Kempen Area expose DHMV/VMM as logical regional MapLibre
|
||||
layers while retaining municipality-linked storage and twelve distinct VMM
|
||||
scenario identities.
|
||||
|
||||
Live evidence:
|
||||
- VMM: 336 ready Datasets, 28 Areas, 12 products, 336 DatasetVersions,
|
||||
165,277,992 bytes, zero duplicate Area/product pairs and zero missing or
|
||||
size-mismatched files.
|
||||
- DHMV: 56 ready Datasets, 28 Areas, two products, 56 DatasetVersions,
|
||||
282,645,991 bytes, zero duplicate Area/product pairs and zero missing or
|
||||
size-mismatched files.
|
||||
- Every VMM Dataset has null `observed_at` and explicit false flags for
|
||||
bathymetry, permanent depth/volume and concurrent volume. A repeated Retie
|
||||
run reused all twelve immutable Dataset ids.
|
||||
- Tower commit `153cff0` passed container health, PostGIS 3.6, Alembic head
|
||||
`202607160001` and frontend/API/icon proxy checks before the regional UI
|
||||
follow-up.
|
||||
|
||||
Validation evidence:
|
||||
- Focused DHMV/VMM and regional explorer backend suites passed, including
|
||||
exact adjacent-partition percentile and area calculations.
|
||||
- The pre-UI-fix release gate passed 746 tests, backend compilation, API
|
||||
contract checks, one Alembic head, frontend typecheck and production build.
|
||||
- The final local release gate passed all 752 backend tests, backend
|
||||
compilation, 107 documented API route checks, Alembic head `202607160001`,
|
||||
frontend typecheck and the production build. Live deployment and browser
|
||||
evidence are recorded after the Tower rollout.
|
||||
|
||||
Next:
|
||||
- Use the now-complete regional current-state layers as the baseline for a
|
||||
governed refresh/change scheduler. Keep source-specific publication dates
|
||||
and scenario semantics; do not turn VMM scenarios into a historical water
|
||||
level series.
|
||||
|
||||
## Sprint 217 Regional DOV soil coverage (2026-07-16)
|
||||
|
||||
Changed:
|
||||
|
||||
+17
-11
@@ -387,7 +387,7 @@ quality metrics.
|
||||
- Cache: canonical raster Dataset plus WCS request/response/output checksums
|
||||
- Operators: `scripts/provision_mol_dhmv.py`,
|
||||
`scripts/provision_regional_dhmv.py`
|
||||
- Prioriteit: P4 uitgevoerd voor Mol en operationeel regionaal uitbreidbaar
|
||||
- Prioriteit: P4 uitgevoerd voor alle 28 Kempen-gemeenten
|
||||
|
||||
The operator requests a bounded 5 m analysis copy by default so a complete
|
||||
municipality remains operationally manageable while retaining the official
|
||||
@@ -401,7 +401,10 @@ De regionale operator gebruikt exact de 28 persistente gemeente-Areas van de
|
||||
goedgekeurde Kempen-scope en plant twee outputs per gemeente. Die 56
|
||||
gemeentepartities vermijden een onnodig monolithisch hoogtebestand, blijven
|
||||
binnen WCS/pixelgrenzen en sluiten aan op de gebiedsgebonden datasetselectie in
|
||||
de kaart. Herhaalruns gebruiken de bestaande checksummed requestcache.
|
||||
de kaart. De live matrix bevat 56 geverifieerde Datasets en DatasetVersions.
|
||||
De regionale kaart combineert alleen de partities die een getekende selectie
|
||||
raken; globale statistieken worden uit de samengevoegde cellen berekend.
|
||||
Herhaalruns gebruiken de bestaande checksummed requestcache.
|
||||
|
||||
## VMM overstromingsgevaarkaarten
|
||||
|
||||
@@ -415,8 +418,9 @@ de kaart. Herhaalruns gebruiken de bestaande checksummed requestcache.
|
||||
- Publicatie: 2019/2021 afhankelijk van product; scenario-identiteit is
|
||||
leidend en wordt niet als observatiedatum opgeslagen
|
||||
- Cache: canonical raster Dataset plus request/response/output checksums
|
||||
- Operator: `scripts/provision_mol_flood_hazards.py`
|
||||
- Prioriteit: P5 scenariofundament uitgevoerd voor Mol
|
||||
- Operators: `scripts/provision_mol_flood_hazards.py`,
|
||||
`scripts/provision_regional_flood_hazards.py`
|
||||
- Prioriteit: P5 scenariofundament uitgevoerd voor alle 28 Kempen-gemeenten
|
||||
|
||||
VMM beschrijft deze lagen als maximale lokale waterdiepte tussen wateroppervlak
|
||||
en maaiveld voor een gekozen kans- en klimaatscenario. GeoIntel converteert
|
||||
@@ -441,15 +445,17 @@ scenario uitsluitend de bestaande canonical API aan:
|
||||
- `POST /api/v1/projects/{project_id}/datasets/{dataset_id}/raster/flood-hazard/select`
|
||||
|
||||
Deze gemeentepartities zijn bewust. Een volledig regionaal raster in een
|
||||
aanvraag zou de publieke WCS- en pixelgrenzen onnodig belasten. In de UI wordt
|
||||
een VMM-dataset alleen als overstromingslaag getoond voor het actieve
|
||||
werkgebied waaraan die dataset gekoppeld is. Zo blijft Mol bij Mol, Geel bij
|
||||
Geel, enzovoort.
|
||||
aanvraag zou de publieke WCS- en pixelgrenzen onnodig belasten. In de UI blijft
|
||||
een gemeente gekoppeld aan haar eigen bestand. Op het volledige Kempen-gebied
|
||||
worden de 28 partities als één logische scenario-laag getoond. Een getekende
|
||||
rechthoek opent alleen de rakende partities en berekent globale statistieken
|
||||
uit de werkelijk samengevoegde cellen.
|
||||
|
||||
De regionale operator ondersteunt `--dry-run`, `--members` en `--products`.
|
||||
Een volledige scope met alle twaalf scenario's plant 336 gecontroleerde
|
||||
acquisities. Herhaalruns gebruiken bestaande checksummed Datasets via de
|
||||
backend-cache zolang de requestidentiteit niet verandert.
|
||||
De uitgevoerde volledige scope bevat 336 gecontroleerde Datasets en 336
|
||||
DatasetVersions zonder ontbrekende gemeente/scenario-combinaties. Herhaalruns
|
||||
gebruiken bestaande checksummed Datasets via de backend-cache zolang de
|
||||
requestidentiteit niet verandert.
|
||||
|
||||
Ook regionaal blijft de semantiek onveranderd: VMM-waterdiepte is een
|
||||
gemodelleerde maximale lokale diepte per kans- en klimaatscenario. GeoIntel kan
|
||||
|
||||
@@ -134,6 +134,14 @@ URLs, response/coverage/normalized checksums, EPSG:31370 bounds, scenario
|
||||
metadata and explicit unsupported-volume flags. Repeat runs reuse matching
|
||||
ready Datasets through the acquisition service cache.
|
||||
|
||||
The regional Map workspace does not create another authoritative raster or
|
||||
copy pixels into PostgreSQL. Its partition-selection endpoints read only the
|
||||
municipal GeoTIFF windows intersecting a bounded selection, mosaic those
|
||||
windows in memory at the governed analysis resolution and return metrics plus
|
||||
the complete contributing `dataset_ids`. The 12-million-cell limit applies to
|
||||
the combined window. Persisted files, checksums and DatasetVersions remain the
|
||||
only authoritative artifacts.
|
||||
|
||||
BWK/Natura 2000 evidence lives under
|
||||
`storage/operator-evidence/bwk-natura2000-2025/mol/`. The `raw/` directory
|
||||
contains immutable WFS pages; the adjacent manifest records their URLs,
|
||||
|
||||
+2
-1
@@ -36,7 +36,8 @@
|
||||
- [x] Persist one bounded whole-region snapshot per thematic raster so drawn selections can cross municipality boundaries without changing source semantics.
|
||||
- [x] Generalize the DOV soil-map operator to all 28 approved Kempen municipality partitions with one regional snapshot manifest.
|
||||
- [x] Add a resumable regional DHMV DTM/DSM operator for all 28 approved Kempen municipality Areas.
|
||||
- [ ] Execute and audit the complete 336-product VMM and 56-product DHMV regional runtime matrices.
|
||||
- [x] Execute and audit the complete 336-product VMM and 56-product DHMV regional runtime matrices.
|
||||
- [x] Present municipal DHMV/VMM partitions as logical regional layers and analyse cross-boundary rectangles without a municipality prerequisite.
|
||||
|
||||
## Governed source expansion backlog
|
||||
|
||||
|
||||
Reference in New Issue
Block a user