Record real data validation run
GeoIntel CI / docs-smoke (push) Has been cancelled
GeoIntel CI / contract-smoke (push) Has been cancelled

This commit is contained in:
Codex
2026-07-07 01:37:09 +02:00
parent 24689452df
commit 8f75c89b1c
4 changed files with 60 additions and 1 deletions
+10
View File
@@ -7,6 +7,16 @@
# Changelog
## Sprint 122 Real operator data availability and raster metadata fix (2026-07-07)
- Created Tower operator sample artifacts under `/mnt/user/appdata/geointel/storage/operator-data`:
- `geel_orthophoto_wms_512.tif` from the Digitaal Vlaanderen OMWRGBMRVL WMS `Ortho` layer.
- `geel_grb_gbg_buildings.geojson` from the Digitaal Vlaanderen GRB OGC API Features `GBG` collection.
- Fixed raster upload metadata mapping so uploaded rasters persist canonical `bounds_json`, `resolution_json` and `bands_json` from extracted raster metadata.
- Added regression coverage for raster upload metadata mapping.
- Deployed the fix to Tower and ran the real-data detection + QA workflow against `http://192.168.10.150:1202`.
- The workflow passed with persisted raster/reference datasets, tile manifest, AnalysisRun, QualityCheck and detection GeoJSON export. The configured evaluation model returned zero detections on the Geel AOI, so model quality/calibration remains a follow-up.
## Sprint 121 Real data detection and QA workflow smoke (2026-07-07)
- Added `scripts/verify_real_data_detection_qa_workflow.sh` for operator-provided GeoTIFF/reference-vector validation against a live runtime.
+36
View File
@@ -1,3 +1,39 @@
## Sprint 122 Real operator data availability and raster metadata fix (2026-07-07)
Changed:
- Created real operator validation files on Tower under `/mnt/user/appdata/geointel/storage/operator-data`.
- Generated `/mnt/user/appdata/geointel/storage/operator-data/geel_orthophoto_wms_512.tif` from the official Digitaal Vlaanderen OMWRGBMRVL WMS `Ortho` layer for a 500 m x 500 m AOI around Geel.
- Generated `/mnt/user/appdata/geointel/storage/operator-data/geel_grb_gbg_buildings.geojson` from the official Digitaal Vlaanderen GRB OGC API Features `GBG` building collection for the same AOI; it contained 617 features.
- Fixed `DatasetService` raster upload metadata mapping so extracted `bounds`, `resolution` and `dtype` populate persisted `bounds_json`, `resolution_json` and `bands_json`.
- Added `backend/tests/test_sprint122_raster_upload_metadata_mapping.py`.
Validation:
- RED: `python -m pytest backend/tests/test_sprint122_raster_upload_metadata_mapping.py -q` failed because uploaded raster `bounds_json` was `None`.
- `python -m pytest backend/tests/test_sprint122_raster_upload_metadata_mapping.py -q` passed.
- `python -m compileall backend/app` passed.
- `bash scripts/run_readiness_check.sh` passed: 386 backend tests, Alembic head check, frontend typecheck/build and shell syntax checks.
- Tower deploy from commit `2468945` passed with `GEOINTEL_INSTALL_AI=true`.
- Deploy-time live migration smoke passed; PostGIS reported `3.6 USE_GEOS=1 USE_PROJ=1 USE_STATS=1` and Alembic head was `202606120900`.
- Deploy-time browser runtime verification passed for `http://192.168.10.150:1202`.
- Real-data smoke passed:
- command: `REAL_RASTER_PATH=/mnt/user/appdata/geointel/storage/operator-data/geel_orthophoto_wms_512.tif REAL_REFERENCE_VECTOR_PATH=/mnt/user/appdata/geointel/storage/operator-data/geel_grb_gbg_buildings.geojson bash scripts/verify_real_data_detection_qa_workflow.sh http://192.168.10.150:1202`
- project: `e1ec201b-bd83-4c95-be5a-f7225902d3c5`
- raster dataset: `fca14d23-bc0c-4b1f-8bfa-ba968f2e05d0`
- reference dataset: `5bb4a9b4-2a4e-4680-a729-777a75ecd51f`
- model asset: `yolov8n-building-segmentation-pt`
- manifest: `/app/storage/tiles/e1ec201b-bd83-4c95-be5a-f7225902d3c5/fca14d23-bc0c-4b1f-8bfa-ba968f2e05d0/0f29f110-951f-48eb-a2fb-636b587e31ee/manifest.json`
- analysis run: `c6798559-590c-42e3-a192-45a2409fa832`
- detections: `0`
- quality check: `cd0d13f9-f6ce-4acf-8859-7cb7aa666125`
- detection export: `0081c230-1766-4ff3-8df0-e47236f529d1`
Limitations:
- The workflow is now operational against real operator data, but the active evaluation model returned zero detections on the Geel sample AOI. This is model/data quality evidence, not a platform failure.
- The prepared files are runtime artifacts on Tower, not repository fixtures.
Next recommended pass:
- Calibrate model selection and confidence/class handling against real Flemish orthophotos, or replace the evaluation model with a detector better aligned to aerial building footprints.
## Sprint 121 Real data detection and QA workflow smoke (2026-07-07)
Changed:
+2 -1
View File
@@ -92,7 +92,8 @@ This file now starts with the current implementation status. Older preparation/b
- [x] Add AI Labs Detection/Segmentation hierarchy and result density polish.
- [x] Add Export/System handoff hierarchy and provider registry density polish.
- [x] Add operator-provided real raster/reference detection + QA workflow smoke.
- [ ] Validate the configured building model on a real georeferenced Kempen orthophoto/GeoTIFF with persisted reference vectors and QA/QC metrics.
- [x] Validate the configured building model on a real georeferenced Kempen orthophoto/GeoTIFF with persisted reference vectors and QA/QC metrics.
- [ ] Calibrate or replace the evaluation building model after real orthophoto validation returned zero detections on the Geel sample AOI.
## Sprint 8 status
+12
View File
@@ -159,6 +159,18 @@ REAL_REFERENCE_VECTOR_PATH=/mnt/user/appdata/geointel/data/reference-buildings.g
bash scripts/verify_real_data_detection_qa_workflow.sh http://192.168.10.150:1202
```
The current Tower operator sample is available at:
```bash
REAL_RASTER_PATH=/mnt/user/appdata/geointel/storage/operator-data/geel_orthophoto_wms_512.tif \
REAL_REFERENCE_VECTOR_PATH=/mnt/user/appdata/geointel/storage/operator-data/geel_grb_gbg_buildings.geojson \
bash scripts/verify_real_data_detection_qa_workflow.sh http://192.168.10.150:1202
```
Those files are runtime artifacts generated from Digitaal Vlaanderen's
OMWRGBMRVL WMS `Ortho` layer and GRB OGC API Features `GBG` building collection
for a small Geel AOI. They are intentionally not repository fixtures.
The real-data smoke is intentionally mutating and refuses to run without
operator-supplied files. Current V1 upload support expects a georeferenced
`.tif`, `.tiff` or `.geotiff` raster and a `.geojson` or `.json` reference