Record live Mol terrain validation
This commit is contained in:
+7
-1
@@ -10,7 +10,8 @@
|
|||||||
## Sprint 207 Governed DHMV II terrain foundation (2026-07-15)
|
## Sprint 207 Governed DHMV II terrain foundation (2026-07-15)
|
||||||
|
|
||||||
- Added a fixed official Digitaal Vlaanderen DHMV II DTM/DSM WCS registry,
|
- Added a fixed official Digitaal Vlaanderen DHMV II DTM/DSM WCS registry,
|
||||||
bounded multipart GeoTIFF acquisition and exact persisted-Area clipping.
|
rate-limited 10 km multipart GeoTIFF acquisition, georeferenced mosaicking
|
||||||
|
and exact persisted-Area clipping.
|
||||||
- Validates and retains native 1 m product identity, 5 m analysis resolution,
|
- Validates and retains native 1 m product identity, 5 m analysis resolution,
|
||||||
EPSG:31370, Float32 nodata, TAW, acquisition period and source/output
|
EPSG:31370, Float32 nodata, TAW, acquisition period and source/output
|
||||||
checksums through ordinary Dataset, DatasetVersion and Job persistence.
|
checksums through ordinary Dataset, DatasetVersion and Job persistence.
|
||||||
@@ -22,6 +23,11 @@
|
|||||||
presenting DHMV terrain/surface height as water depth or volume.
|
presenting DHMV terrain/surface height as water depth or volume.
|
||||||
- Added runtime/Unraid configuration and focused acquisition, GIS formula,
|
- Added runtime/Unraid configuration and focused acquisition, GIS formula,
|
||||||
persistence, API, frontend and packaging tests without a migration.
|
persistence, API, frontend and packaging tests without a migration.
|
||||||
|
- Live Mol DTM/DSM provisioning now persists 4,581,867 valid 5 m cells per
|
||||||
|
product with complete Area coverage and immutable cache reuse. Browser
|
||||||
|
validation confirmed the MapLibre relief overlay and full-Area metrics.
|
||||||
|
- Scoped the orthophoto building-recognition prompt to the building theme so
|
||||||
|
terrain results remain focused on elevation, relief and slope.
|
||||||
|
|
||||||
## Sprint 206 Governed Buildings and Addresses Register snapshot (2026-07-15)
|
## Sprint 206 Governed Buildings and Addresses Register snapshot (2026-07-15)
|
||||||
|
|
||||||
|
|||||||
@@ -1193,6 +1193,13 @@ The default 5 m analysis copy keeps complete-Mol processing bounded while
|
|||||||
retaining native 1 m resolution, EPSG:31370, TAW, `-9999` nodata and the
|
retaining native 1 m resolution, EPSG:31370, TAW, `-9999` nodata and the
|
||||||
2013-2015 acquisition period in provenance.
|
2013-2015 acquisition period in provenance.
|
||||||
|
|
||||||
|
Municipality-sized requests are split into sequential WCS tiles of at most
|
||||||
|
10 km per side. The client sends the explicit media accept header required by
|
||||||
|
the production service, waits between requests, retries transient provider
|
||||||
|
statuses once and mosaics only tiles that validate against EPSG:31370, one
|
||||||
|
band and the requested resolution. Every tile URL and aggregate transfer
|
||||||
|
checksum remains in provenance.
|
||||||
|
|
||||||
Run the complete Mol operator after the regional workspace and Mol Area exist:
|
Run the complete Mol operator after the regional workspace and Mol Area exist:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|||||||
@@ -422,6 +422,7 @@ def test_frontend_and_runtime_expose_dhmv_workflow() -> None:
|
|||||||
assert "digitaal_vlaanderen_dhmv" in app_source
|
assert "digitaal_vlaanderen_dhmv" in app_source
|
||||||
assert "Hoogte & reliëf" in map_source
|
assert "Hoogte & reliëf" in map_source
|
||||||
assert "terrainImageUrl" in map_source
|
assert "terrainImageUrl" in map_source
|
||||||
|
assert "analysisMode === 'current' && activeTheme.id === 'buildings' && mapSelectionBbox" in map_source
|
||||||
assert "selectTerrain" in hook_source
|
assert "selectTerrain" in hook_source
|
||||||
assert "/raster/terrain/select" in service_source
|
assert "/raster/terrain/select" in service_source
|
||||||
for path in (
|
for path in (
|
||||||
|
|||||||
@@ -8690,9 +8690,10 @@ Next:
|
|||||||
Implemented:
|
Implemented:
|
||||||
- Added a fixed `dtm_1m`/`dsm_1m` product registry for the official Digitaal
|
- Added a fixed `dtm_1m`/`dsm_1m` product registry for the official Digitaal
|
||||||
Vlaanderen production WCS and rejected arbitrary coverage identifiers.
|
Vlaanderen production WCS and rejected arbitrary coverage identifiers.
|
||||||
- Added bounded WCS scaling, multipart GeoTIFF extraction, exact persisted-Area
|
- Added bounded, rate-limited 10 km WCS tiling, multipart GeoTIFF extraction,
|
||||||
clipping and validation of EPSG:31370, one Float32 band, resolution, nodata
|
georeferenced mosaicking, exact persisted-Area clipping and validation of
|
||||||
and valid cells before canonical DatasetService persistence.
|
EPSG:31370, one Float32 band, resolution, nodata and valid cells before
|
||||||
|
canonical DatasetService persistence.
|
||||||
- Retained response, coverage and normalized-output SHA256 evidence plus native
|
- Retained response, coverage and normalized-output SHA256 evidence plus native
|
||||||
1 m resolution, default 5 m analysis resolution, TAW and period 2013-2015.
|
1 m resolution, default 5 m analysis resolution, TAW and period 2013-2015.
|
||||||
- Added exact masked terrain selection with governed height, relief and slope
|
- Added exact masked terrain selection with governed height, relief and slope
|
||||||
@@ -8702,9 +8703,28 @@ Implemented:
|
|||||||
readable period/source labels and raster-aware rectangle/full-Area queries.
|
readable period/source labels and raster-aware rectangle/full-Area queries.
|
||||||
- Added `scripts/provision_mol_dhmv.py`, Docker/Unraid settings and documentation.
|
- Added `scripts/provision_mol_dhmv.py`, Docker/Unraid settings and documentation.
|
||||||
|
|
||||||
Initial validation:
|
Validation evidence:
|
||||||
- Focused acquisition, raster, GIS metric, API, frontend and packaging tests
|
- Full local readiness passed compilation, 669 backend tests, one Alembic head
|
||||||
pass with deterministic synthetic GeoTIFF fixtures.
|
(`202607150001`), frontend TypeScript typecheck/build and shell syntax gates.
|
||||||
|
- The production WCS required an explicit `Accept: */*` header and rejected
|
||||||
|
rapid municipality tile requests. The governed client now waits two seconds
|
||||||
|
between requests and retries a transient provider status once. Four real
|
||||||
|
requests produced one `2928 x 3794`, EPSG:31370, 5 m Mol bounding raster
|
||||||
|
before exact municipality masking.
|
||||||
|
- Tower deployment passed all-in-one health, PostGIS 3.6 migration/schema
|
||||||
|
smoke, frontend proxy and icon verification.
|
||||||
|
- Live DTM Dataset `eccb9174-edb9-4867-928c-9acc5d686fa5` is ready with
|
||||||
|
checksum `9c5f06f5ce2070128aca06e3cbcec00ec8f698bf592c1745245280cd0488ad9b`.
|
||||||
|
Live DSM Dataset `34d1be8e-3a80-4ea3-98e5-238739000524` is ready with
|
||||||
|
checksum `54e36a2aada03f52eb24a7b6af505871d33ed52a5c2af04500793dbfca72f7af`.
|
||||||
|
Both contain 4,581,867 valid 5 m cells and report complete Mol coverage.
|
||||||
|
- Full-Mol DTM metrics are mean 31.8985 m TAW, minimum 20.8598 m TAW,
|
||||||
|
maximum 48.4594 m TAW, relief 27.5996 m and mean slope 1.2377 degrees.
|
||||||
|
Re-running the operator reused both immutable datasets.
|
||||||
|
- Browser validation selected Mol, activated DTM by default, rendered the
|
||||||
|
colour-relief overlay, returned all terrain metrics, retained the explicit
|
||||||
|
water-depth/volume limitation, showed no horizontal overflow and emitted no
|
||||||
|
browser console warnings/errors.
|
||||||
- No migration, direct raster database write, LiDAR point-cloud processing or
|
- No migration, direct raster database write, LiDAR point-cloud processing or
|
||||||
water-volume inference was introduced.
|
water-volume inference was introduced.
|
||||||
|
|
||||||
@@ -8715,5 +8735,5 @@ Known limitations:
|
|||||||
explicit smaller acquisition. DSM-DTM building height remains future work.
|
explicit smaller acquisition. DSM-DTM building height remains future work.
|
||||||
|
|
||||||
Next:
|
Next:
|
||||||
- Complete the full readiness and live Mol operator/browser validation, then
|
- Audit P5 official bathymetry and water-depth sources before enabling any
|
||||||
audit P5 bathymetry sources before enabling any water depth or volume metric.
|
water depth or volume metric. Keep DHMV as height/relief input only.
|
||||||
|
|||||||
@@ -1325,7 +1325,7 @@ export function MapWorkspace({
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{analysisMode === 'current' && mapSelectionBbox ? (
|
{analysisMode === 'current' && activeTheme.id === 'buildings' && mapSelectionBbox ? (
|
||||||
<div className={`geo-image-analysis geo-image-analysis-${orthophotoAnalysisStage}`}>
|
<div className={`geo-image-analysis geo-image-analysis-${orthophotoAnalysisStage}`}>
|
||||||
<div>
|
<div>
|
||||||
<span>Beeldanalyse</span>
|
<span>Beeldanalyse</span>
|
||||||
|
|||||||
+4
-3
@@ -1524,9 +1524,10 @@ docker exec geointel python /app/scripts/provision_mol_dhmv.py
|
|||||||
|
|
||||||
The operator resolves project and Area through the API, derives the bounded
|
The operator resolves project and Area through the API, derives the bounded
|
||||||
EPSG:4326 request rectangle and calls the canonical DHMV endpoints. The backend
|
EPSG:4326 request rectangle and calls the canonical DHMV endpoints. The backend
|
||||||
requests the fixed official WCS coverages, extracts multipart GeoTIFF, clips to
|
requests the fixed official WCS coverages in rate-limited tiles of at most
|
||||||
the exact Area, validates EPSG:31370/resolution/nodata/valid cells and stores
|
10 km per side, extracts multipart GeoTIFF, creates one georeferenced mosaic,
|
||||||
through DatasetService. It then runs a full-Area terrain metric smoke.
|
clips to the exact Area, validates EPSG:31370/resolution/nodata/valid cells and
|
||||||
|
stores through DatasetService. It then runs a full-Area terrain metric smoke.
|
||||||
|
|
||||||
Useful safe overrides:
|
Useful safe overrides:
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user