Complete live Mol register validation
This commit is contained in:
@@ -8613,3 +8613,74 @@ Next:
|
||||
- Implement P3 Buildings and Addresses Register through a governed snapshot
|
||||
operator, preserving register lifecycle semantics separately from GRB
|
||||
footprint geometry and excluding personal data.
|
||||
|
||||
## Sprint 206 - Governed Buildings and Addresses Register snapshot (2026-07-15)
|
||||
|
||||
Implemented:
|
||||
- Added `scripts/provision_buildings_addresses_register.py` for the official
|
||||
Digitaal Vlaanderen `Gebouw`, `Gebouweenheid` and `Adres` OGC API Features
|
||||
collections. It retains raw pages and SHA256 checksums, uses retries and
|
||||
limits, clips exactly in EPSG:31370 and persists only through DatasetService.
|
||||
- Added service-window-safe pagination. Live audit proved that the address
|
||||
collection omitted `next` after 52,000 bbox rows while offset 52,000 still
|
||||
returned data. The first incomplete snapshot was rejected and transactionally
|
||||
removed; the corrected operator continued with `startIndex` to a short final
|
||||
page at 52,110 rows.
|
||||
- Kept building lifecycle status separate from GRB footprint evidence. Official
|
||||
building-unit relations use `GebouwObjectId`; address relations are accepted
|
||||
only for an exact unambiguous unit position or unambiguous building
|
||||
containment. Ambiguous and unmatched relations remain diagnostics.
|
||||
- Persisted building polygons with aggregate relation counts only. Full address,
|
||||
street, house-number and box-number fields remain in restricted raw operator
|
||||
evidence and never enter queryable feature properties.
|
||||
- Added exact footprint, lifecycle, unit, address-status and GRB-match metrics.
|
||||
Fixed filtered `feature_count` execution without changing the existing
|
||||
unfiltered count contract.
|
||||
- Added Map and Sources presentation. The exact Mol Area prefers the register;
|
||||
another municipality and the full Kempen scope retain complete regional GRB.
|
||||
Evidence paths and manifest reuse are isolated by Area key and boundary hash.
|
||||
|
||||
Live evidence:
|
||||
- Source bbox acquisition completed with 111,696 buildings (112 pages), 67,239
|
||||
building units (68 pages) and 52,110 addresses (53 pages), with zero duplicate
|
||||
source ids. Exact Mol clipping retained 43,945 buildings and 23,788 addresses.
|
||||
- Dataset `c3a47680-cea1-406c-aebb-8ebfa8d7a359` is the only ready Mol register
|
||||
snapshot for 2026-07-15. It has one DatasetVersion, 43,945 vector rows,
|
||||
43,945 distinct source ids, SRID 4326, polygonal geometry only and zero invalid
|
||||
geometries.
|
||||
- Lifecycle counts are 37,159 realized, 14 under construction, 155 planned,
|
||||
22 not realized and 6,595 historical buildings. Exact footprint area is
|
||||
502.1434 ha.
|
||||
- Aggregate relations contain 30,382 building units, 21,388 linked addresses
|
||||
and 19,513 addresses in use. There are 1,687 ambiguous and 713 unmatched
|
||||
address positions. Queryable properties contain zero prohibited address
|
||||
label/number fields.
|
||||
- GRB reconciliation produced 36,588 matched, 5 review, 664 ambiguous and 6,688
|
||||
unmatched register buildings. There are 353 GRB footprints without a confirmed
|
||||
target and 329 duplicate-target groups. Realized-building match rate is
|
||||
98.4526%; total register match rate is lower because historical and other
|
||||
lifecycle records are retained.
|
||||
- Live exact-Area API returned all eleven governed metrics. Browser validation
|
||||
confirmed Mol register selection, Geel GRB fallback, readable metric/warning
|
||||
output, source inventory, MapLibre rendering, no horizontal overflow and no
|
||||
browser console warnings/errors.
|
||||
|
||||
Validation evidence:
|
||||
- Full local readiness passed backend compilation, 656 backend tests, one
|
||||
Alembic head, frontend TypeScript typecheck/build and shell syntax gates.
|
||||
- Tower deployment passed all-in-one health, PostGIS 3.6 migration/schema smoke,
|
||||
frontend proxy and icon verification.
|
||||
|
||||
Known limitations:
|
||||
- This is a current continuously updated snapshot, not a fabricated historical
|
||||
series. GRB remains the complete regional geometry source outside Mol.
|
||||
- Address counts are not households, dwellings, residents or population.
|
||||
Building footprint is ground area, not floor area, height or volume.
|
||||
- Ambiguous address links, duplicate GRB targets and review/unmatched geometry
|
||||
remain explicit evidence for later regional expansion; no nearest match is
|
||||
forced.
|
||||
|
||||
Next:
|
||||
- Implement P4 Digitaal Hoogtemodel Vlaanderen with a governed DTM/DSM product,
|
||||
vertical reference, bounded raster storage and measured elevation/slope
|
||||
statistics. Do not infer water depth or volume from terrain height alone.
|
||||
|
||||
@@ -136,7 +136,7 @@ checksum conflict with an existing annual Dataset fails closed.
|
||||
Buildings and Addresses Register snapshot evidence lives under:
|
||||
|
||||
```text
|
||||
storage/operator-evidence/buildings-addresses-register/mol/{observed-date}/
|
||||
storage/operator-evidence/buildings-addresses-register/{area-key}/{observed-date}/
|
||||
raw/
|
||||
buildings_page_*.json
|
||||
building_units_page_*.json
|
||||
@@ -153,6 +153,9 @@ counts and classified GRB reconciliation only. It enters PostGIS exclusively
|
||||
through DatasetService and ordinary `vector_features`; the operator never
|
||||
writes database rows directly. The manifest binds all raw pages, the normalized
|
||||
artifact, exact Area boundary and every GRB partition used for reconciliation.
|
||||
The Area key is deterministic (`mol`, `geel`, and so on). Reuse also requires
|
||||
the same Area label, observation date and boundary checksum, preventing one
|
||||
municipality's evidence from being imported under another Area.
|
||||
|
||||
Offline demo export artifacts can be inspected and cleaned with:
|
||||
|
||||
|
||||
+4
-4
@@ -53,10 +53,10 @@ pass live Mol validation before regional expansion.
|
||||
|
||||
### P3 - Buildings and Addresses Register
|
||||
|
||||
- [ ] Define a governed snapshot operator and relation mapping between building unit, building object, address and GRB geometry.
|
||||
- [ ] Keep register lifecycle/status semantics separate from GRB footprint geometry and document match confidence/unmatched rows.
|
||||
- [ ] Add current building-status/address metrics without exposing personal data or treating addresses as households/population.
|
||||
- [ ] Add Mol reconciliation tests and a live mismatch report before regional import.
|
||||
- [x] Define a governed snapshot operator and relation mapping between building unit, building object, address and GRB geometry.
|
||||
- [x] Keep register lifecycle/status semantics separate from GRB footprint geometry and document match confidence/unmatched rows.
|
||||
- [x] Add current building-status/address metrics without exposing personal data or treating addresses as households/population.
|
||||
- [x] Add Mol reconciliation tests and a live mismatch report before regional import.
|
||||
|
||||
### P4 - Digitaal Hoogtemodel Vlaanderen
|
||||
|
||||
|
||||
Reference in New Issue
Block a user