From 84f695d069173a0588389c75ed3af5efa364f829 Mon Sep 17 00:00:00 2001 From: Codex Date: Tue, 14 Jul 2026 19:45:06 +0200 Subject: [PATCH] docs: record regional buildings live proof --- CHANGELOG.md | 3 +++ docs/CODEX_EXECUTION_LOG.md | 13 +++++++++++-- docs/TODO.md | 3 ++- scripts/README.md | 6 ++++++ 4 files changed, 22 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 17e51a6e..8e9b175b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,9 @@ - Added streaming artifact copy and batch-wise partition indexing through `DatasetService` and `VectorFeatureService`, avoiding one giant multipart parse while preserving one normal regional dataset for existing map and PostGIS selection flows. - Added truncation guards, source/checksum manifests, immutable observation dates, duplicate-source rejection and focused service/operator tests. - Kept the provider endpoint contract unchanged and retained explicit operator-only fetching; no source request runs during application startup or interactive map use. +- Provisioned the live 2026-07-14 regional snapshot on Tower: 466,078 unique GRB buildings from 879 source pages, 28 retained municipality partitions and one 478,143,249-byte managed artifact with `reference_truncated=false`. +- Added optional persisted-Area filtering to the existing vector-selection contract so a full municipality or regional work area uses its exact PostGIS polygon instead of counting surrounding bbox corners. +- Verified exact live selections of 36,941 buildings for Mol and 466,078 for the complete transport region, plus an interactive rectangle query and a 730-feature detail viewport with no browser errors or horizontal overflow. ## Sprint 189 Official Kempen operational scope (2026-07-14) diff --git a/docs/CODEX_EXECUTION_LOG.md b/docs/CODEX_EXECUTION_LOG.md index 5369a485..756db797 100644 --- a/docs/CODEX_EXECUTION_LOG.md +++ b/docs/CODEX_EXECUTION_LOG.md @@ -7896,8 +7896,17 @@ Implemented: Validation before deployment: - Backend/application and operator compilation passed. -- New focused operator/storage/batch-index suite passed 5 tests. +- New focused operator/storage/batch-index suite passed 6 tests. - Dataset, vector persistence, Mol municipality and Kempen scope regression selection passed 37 tests. +Live operational proof: +- Deployed the regional operator and its interior-feature fast path through commit `a879c74`, then completed all 28 municipality partitions against the official GRB `GBG` collection. +- The immutable `2026-07-14` snapshot contains 466,078 buildings from 879 source pages. The combined retained artifact is 478,143,249 bytes and records `reference_truncated=false`. +- Dataset `e236fa03-7fce-4b37-bc7d-8bddd4d50346` is `ready`, `reference`, `source_name=grb`, `reference_layer_name=buildings`, EPSG:4326 and has one DatasetVersion. A repeat operator run returned `reused=true` in 3.5 seconds. +- Direct PostGIS verification returned 466,078 rows, 466,078 distinct source IDs, zero missing source IDs, zero invalid/empty geometries and zero non-4326 rows. The geometry mix is 466,069 Polygon and 9 MultiPolygon features. +- Live browser verification exposed an exact-scope defect: selecting Mol inside the regional dataset initially counted the surrounding bbox and returned 86,222 buildings. Commit `616424e` added optional persisted-Area filtering while retaining backward-compatible bbox selection for drawn rectangles. +- After redeploy, the complete Vervoerregio Area returned exactly 466,078 buildings and the official Mol Area exactly 36,941. A drawn rectangle returned 308 measured buildings, and zoom-level detail loaded 730 visible features from PostGIS onto MapLibre. +- Full readiness passed 546 backend tests, one Alembic head, frontend typecheck/build and all repository gates. Tower passed health, PostGIS 3.6, schema/index and proxy checks; browser audits at 1280x720 and 3440x1440 had no console warnings/errors or horizontal overflow. + Next: -- Run the complete readiness gate, deploy to Tower, execute the full 28-partition source job, verify exact PostGIS counts and perform full-region plus rectangle browser selections. +- Reuse the bounded regional operator pattern for current roads, water and parcels, then add official population and land-use time series without changing Mol semantics or introducing interactive external fetching. diff --git a/docs/TODO.md b/docs/TODO.md index f6b0cfdb..03f74d49 100644 --- a/docs/TODO.md +++ b/docs/TODO.md @@ -9,7 +9,8 @@ - [x] Select, validate and provision official Statbel 2021-2025 population/statistical-sector snapshots for Mol. - [x] Select, validate and provision official Departement Omgeving 2013-2025 forest snapshots from the 10 m land-use map. - [x] Define and provision the official 28-municipality Vervoerregio Kempen as the explicit operational regional scope. -- [ ] Partition and provision regional theme datasets in bounded batches, starting with current buildings/context and then population/land-use time series. +- [x] Partition and provision the complete current GRB building theme for all 28 Kempen transport-region municipalities, with resumable source artifacts and one queryable regional PostGIS dataset. +- [ ] Provision the remaining regional context themes in bounded partitions: roads, water and parcels, followed by population and land-use time series. 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`. diff --git a/scripts/README.md b/scripts/README.md index 6c1e1230..e751e4a4 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -1319,6 +1319,12 @@ Safety limits can be adjusted explicitly with truncated dataset. The command never runs during startup or an interactive map query. +The verified Tower snapshot for `2026-07-14` contains 466,078 unique +buildings from 879 GRB source pages. Its 28 retained partitions produce one +478,143,249-byte managed artifact and Dataset +`e236fa03-7fce-4b37-bc7d-8bddd4d50346`; an immediate repeat run reused the +same checksums and Dataset instead of fetching or inserting duplicates. + ## Tower deployment Push the local branch to Gitea, then rebuild the Unraid/Tower Docker runtime: