feat: make Mol explorer map-first
GeoIntel CI / docs-smoke (push) Canceled after 0s
GeoIntel CI / contract-smoke (push) Canceled after 0s

This commit is contained in:
Codex
2026-07-14 13:21:53 +02:00
parent e340b7f1ec
commit 2958c25b6f
24 changed files with 1901 additions and 14 deletions
+3 -1
View File
@@ -389,6 +389,7 @@ Response:
"crs": "EPSG:4326"
},
"feature_count": 2,
"total_feature_count": 2,
"limit": 250,
"truncated": false,
"geojson": {
@@ -404,7 +405,8 @@ Rules:
- Only vector/GeoJSON datasets are supported.
- Coordinates are EPSG:4326 longitude/latitude.
- Results are generated from persisted PostGIS `vector_features`, not from client-side map data.
- The response is capped by `limit` and returns `truncated=true` when more matching rows exist.
- `feature_count` is the number of GeoJSON features returned in the bounded preview. `total_feature_count` is the exact number of persisted rows intersecting the bbox.
- The response is capped by `limit` and returns `truncated=true` when `total_feature_count` exceeds the returned preview.
- `limit` is bounded to `1..1000`. Municipality-scale clients must page spatially by viewport instead of requesting an unbounded municipality FeatureCollection.
- The Map workspace uses this existing endpoint for vector datasets above 5,000 features. It starts delivery at zoom level 14, debounces `moveend` requests and explicitly reports `truncated=true` as a request to zoom further in. This is a client delivery policy, not a second API or persistence path.
+21
View File
@@ -7743,3 +7743,24 @@ Open:
- Final internal-browser verification loaded the official Mol municipality
boundary over the OpenStreetMap road basemap from the persisted PostGIS
workspace. The live Tower page reported no console warnings or errors.
## Sprint 186 Map-first Mol geographic explorer (2026-07-14)
Changed:
- Made Map the default application workspace and reduced the primary task to data theme, rectangle selection and evidence review.
- Added a dedicated three-column explorer with explicit available/missing themes, full-Mol scope, true MapLibre drag selection, automatic PostGIS queries, exact totals, density, property evidence and GeoJSON handoff.
- Preserved the previous technical workflow behind `Geavanceerde werkbank` and kept QA, AI and export persistence unchanged.
- Added exact `total_feature_count` to the vector bbox-selection response while retaining the existing 1,000-feature geometry cap.
- Added `provision_mol_context_layers.py` for official GRB roads (`Wegsegment`), water (`WTZ`, `WLAS`, `WGR`) and parcels (`ADP`) clipped to NIS 13025 and imported through the public dataset API.
Validated so far:
- Frontend typecheck and production build passed.
- Focused map, orchestration and new explorer tests passed.
- Official fetch-only smoke produced 8,444 Mol road features, 3,668 water features and 32,961 parcels with complete pagination and no truncation.
- Full backend suite reached 516 tests; one legacy component-boundary guard initially failed and was resolved by moving theme API orchestration into `useMapThemeSelectionInsights`.
Limitations:
- Population and forest/green remain unavailable rather than simulated until suitable authoritative sources and semantics are selected.
- Live Tower import and browser verification follow after the full readiness gate and deployment.
Next:
- Deploy, import the three official Mol context layers, validate rectangle analysis in the in-app browser and then define authoritative population and land-cover source adapters.
+9
View File
@@ -1,5 +1,14 @@
# GeoIntel TODO
## Map-first Mol explorer
- [x] Make the Mol geographic explorer the default workflow.
- [x] Add drag rectangle selection with automatic persisted theme queries.
- [x] Separate exact bbox intersection totals from the bounded map preview.
- [x] Add official Mol GRB roads, water and parcels provisioning support.
- [ ] Select and validate an official Mol population/statistical-sector source before enabling the population theme.
- [ ] Select and validate an authoritative Flemish land-cover source before enabling the forest/green theme.
This file now starts with the current implementation status. Older preparation/backlog sections are preserved below as historical planning context and should not be treated as the live sprint board without checking `docs/CODEX_EXECUTION_LOG.md`.
## Release hardening status