17 KiB
17 KiB
GeoIntel TODO
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
- Remove Python
datetime.utcnow()deprecation warnings from backend service paths. - Split frontend production build into app, React vendor and MapLibre vendor chunks.
- Enforce Python deprecation warnings as release-readiness failures.
- Fix Docker backend package install order and remove mandatory root
.envdependency. - Add Docker build context ignores for backend and frontend.
- Run Docker/PostGIS live validation on Tower/Unraid.
- Add Unraid Compose template assets with editable ports, storage path and app icon.
- Add single-container Unraid runtime with embedded PostGIS, backend and frontend.
- Remove embedded PostGIS password defaults from all-in-one Docker image metadata.
- Report reused-volume PostgreSQL collation mismatches in live migration smoke.
- Execute Tower PostgreSQL collation reindex/refresh after backup.
Current implementation status
- Backend FastAPI foundation, health endpoint and service structure.
- React/TypeScript frontend foundation and MapLibre workbench.
- Map layer visibility, opacity and feature property inspection.
- Selected project area/AOI map overlay with visibility and opacity controls.
- SQLAlchemy/PostGIS ORM models and Alembic migration chain through Sprint 9.
- Dataset upload, storage metadata and vector feature persistence.
- Raster metadata and raster operation service boundaries.
- Vector operation service boundaries and fixture-backed tests.
- Provider registry skeleton for GRB, OSM, manual and fixture providers.
- Detection Lab foundation, persistence, GeoJSON output and QA integration.
- Configured-YOLO optional dependency strategy and local preflight.
- Segmentation Lab foundation, persistence, GeoJSON output and QA integration.
- QA/QC golden benchmark fixtures and script.
- Run QA/QC golden benchmark from the main readiness gate.
- Verify browser-facing demo QA/QC metrics against the golden baseline.
- Explicit offline demo workflow seed for project, AOI, fixture datasets and persisted QA metrics.
- Project-scoped QA/QC result listing and frontend QA/QC Results panel.
- Persisted export foundation for vector/detection/segmentation GeoJSON and project metadata JSON.
- Lightweight HTML project report artifact export.
- V1 readiness handoff summary in project metadata/report exports.
- Browser-facing demo/export workflow smoke script with connected V1 state checks.
- Compact V1 workbench status strip for project, AOI, datasets, map, QA/QC and exports.
- Dry-run-first demo export artifact cleanup tooling.
- Browser-facing default workbench state smoke for the offline demo project.
- Browser-facing workbench interaction backing-state smoke and stable UI test anchors.
- Backend API contract audit comparing implemented FastAPI routes with
docs/API_CONTRACTS.md. - Live Docker/PostGIS validation on Tower/Unraid.
- Real YOLO compatibility smoke with optional AI extras and local model file.
- Detection and segmentation workflow hook extraction beyond Sprint 10.
- Export and QA/QC workflow hook extraction beyond Sprint 10.
- Dataset, raster and vector workflow hook extraction beyond Sprint 10.
- Dataset detail, raster controls and vector controls component decomposition.
- QA/QC results and map workspace component decomposition.
- Docker Compose port/storage/database configuration via
.envdefaults for Unraid. - Single-container
geointelUnraid compose/template runtime. - Export preview component decomposition and HTML report download-only UX hardening.
- Provider, change-detection and map-workspace orchestration hook decomposition.
- Project/area/dataset cross-load orchestration hook decomposition.
- Demo workflow orchestration hook decomposition.
- Final
App.tsximport/encoding cleanup and size audit. - Optional final bootstrap-effect extraction.
- Decide next V1 stabilization focus: golden dataset expansion or frontend visual polish backlog.
- Expand golden QA/QC benchmark coverage across partial, perfect, no-overlap and MultiPolygon scenarios.
- Improve workbench shell visual polish, mobile navigation density and AI result readability.
- Improve Map workspace layer provenance, empty guidance and selected-feature summary readability.
- Add Data/Map mobile visual polish for upload forms, action grids and map toolbar density.
- Add AI Labs mobile visual polish for model cards, lab forms and result tables.
- Add Export/System mobile visual polish for export actions and provider capability cards.
- Add inspector mobile polish for dataset metadata, raster/vector tools and action groups.
- Add export preview readability polish for large JSON/GeoJSON handoff artifacts.
- Add accessibility focus polish for primary workbench keyboard navigation.
- Add raster/vector operation form readability polish for dense tool panels.
- Add compact loading/error/empty/result state polish across QA, exports and AI labs.
- Add compact shell density polish for topbar context, mobile navigation and workspace skip flow.
- Add Overview workspace panel hierarchy polish for readiness and recommended-action regions.
- Add Data workspace selected-summary and panel density polish.
- Add Map workspace panel hierarchy and layer-control density polish.
- Add selected map feature extraction with highlight, property table, copy and GeoJSON download.
- Add operational GIS map workflow with road basemap, persisted database layer selection and AOI/layer
vector_featuresquery run. - Add basemap policy notice and guided GIS query-to-QA/export workflow in the Map workspace.
- Add reusable latest-result mode for repeated Map QA/QC runs without duplicate derived artifacts.
- Add opt-in Docker/Unraid AI build/runtime path for local PyTorch/Ultralytics YOLO operation.
- Surface configured-YOLO runtime preflight status through the API and Detection Lab UI.
- Add read-only local model asset catalog and Detection Lab model-file selection.
- Add one-click full GIS workflow action for query, derived dataset, QA/QC and export handoff.
- Add QA/QC workspace result hierarchy and filter density polish.
- Add Change Detection panel hierarchy and analysis workspace density polish.
- Add calm workbench layout pass to reduce duplicate navigation, heavy card styling and shell density.
- Add Data and Map usability layout pass with compact catalog cards and map-first spatial review.
- Add QA/QC and Exports usability layout pass with calmer evidence review and handoff artifact scanning.
- Add AI Labs Detection/Segmentation hierarchy and result density polish.
- Add Export/System handoff hierarchy and provider registry density polish.
Sprint 8 status
- Detection foundation ORM and migration
- Detection model registry capability stubs
- Detection run service boundary
- Detection API foundation
- Detection Lab UI foundation
- Segmentation Lab foundation
- Configured YOLO local preflight
- Real YOLO/PyTorch model compatibility smoke
0. Repository Foundation
- Repo mappenstructuur voorbereiden
- Productdocumentatie voorbereiden
- Architectuurdocumentatie voorbereiden
- Codex build plan voorbereiden
- Masterprompt voorbereiden
- Init git repository
- Voeg echte backend scaffold toe
- Voeg echte frontend scaffold toe
1. Backend Foundation
- FastAPI app aanmaken
- Config systeem aanmaken
- Database connectie voorbereiden
- SQLAlchemy models toevoegen
- Alembic migrations toevoegen
- Health endpoint toevoegen
- Tests voor health endpoint toevoegen
2. Database / PostGIS
- Docker compose met PostgreSQL/PostGIS
- PostGIS extensie activeren
- projects tabel
- areas tabel
- datasets tabel
- analysis_runs tabel
- detections tabel
- quality_checks tabel
- exports tabel
- spatial indexes
3. Frontend Foundation
- React + TypeScript scaffold
- Routing
- Layout met sidebar
- API client
- Project pages
- Map Workbench basis
- Map layer controls
- Feature property inspector
- Selected area display
4. Project & Area API
- POST /projects
- GET /projects
- GET /projects/{id}
- POST /projects/{id}/areas
- GET /projects/{id}/areas
- GeoJSON validatie
5. Dataset Manager
- Upload endpoint
- Storage paths
- Raster metadata extraction
- Vector metadata extraction
- Dataset list UI
- Dataset detail UI
6. Raster Core
- Rasterio metadata reader
- Raster preview generation
- Clip raster by area
- Tile raster by area
- Save tile metadata
7. Vector Core
- GeoPandas importer
- CRS detection
- CRS transformation
- Geometry validation
- Clip vector by area
- Store features in PostGIS
8. Reference Data
- OSM fetcher als fallback
- GRB integration research verwerken in code
- Reference dataset cache
- Reference layer viewer
9. Detection Lab
- YOLO wrapper
- Model config
- Inference job
- Pixel bbox naar geo polygon
- Detections opslaan
- Detection UI
- GeoJSON export
10. QA/QC Lab
- Spatial matching
- IoU berekening
- Precision/recall/F1
- False positive layer
- False negative layer
- QA dashboard
- QA export foundation
11. Segmentation Lab
- Segmentation service design
- Mask artifact path convention
- Polygonize masks
- Segmentatiekaartlaag
12. Change Detection
- Compare two runs
- Added/removed objects
- Change stats
- Change layer
13. Tests
- Unit tests GIS helpers
- API tests
- DB/migration smoke tests
- Raster fixture tests
- Vector fixture tests
- QA/QC tests
14. Portfolio Release
- Demo dataset voorbereiden
- Demo workflow documenteren
- Screenshots toevoegen
- README portfolio sectie
- Full smoke test
Repo preparation additions
- Add Data Catalog.
- Add Analysis Specifications.
- Add QA/QC Specification.
- Add Raster Operations Specification.
- Add Vector Operations Specification.
- Add Detection Pipeline Specification.
- Add Segmentation Pipeline Specification.
- Add Change Detection Specification.
- Add UI Page Specifications.
- Add Storage Architecture.
- Add Demo Scenarios.
- Add Development Rules.
- Add Codex phase prompts.
Recommended first Codex build sequence
- Phase 1: Backend foundation using
docs/CODEX_PHASE_1_PROMPT.md. - Phase 2: Dataset Manager using
docs/CODEX_PHASE_2_PROMPT.md. - Phase 3: Detection + QA/QC skeleton using
docs/CODEX_PHASE_3_PROMPT.md.
M2 Engineering Package
- Add ADR decision records.
- Add RFC placeholders for future modules.
- Add API/database/event contracts.
- Add model registry and class catalogs.
- Add queue architecture.
- Add acceptance matrix and test catalog.
- Add Codex M2 build prompts.
- Start Codex Pass 01 backend foundation.
M4 Autonomous Build Readiness
- Add M4 autonomous build readiness document.
- Add M4 sprint board.
- Add module build contracts.
- Add acceptance test catalog.
- Add API example responses.
- Add job lifecycle contract.
- Add frontend state and route contracts.
- Add backend service IO contracts.
- Add model registry seed specification.
- Add demo fixture manifest.
- Add Codex autonomous runbook.
- Add Codex pass prompts.
- Add Geel demo fixtures.
Next M5 Preparation
- Add concrete SQL migration snippets for every core table.
- Add OpenAPI YAML draft.
- Add frontend component prop contracts.
- Add backend unit-test skeleton files.
- Add frontend test skeleton files.
- Add live data connector research notes with verified endpoints.
M5 Operational Readiness Checklist
- CI/CD specification added.
- Healthcheck contracts added.
- Observability plan added.
- Troubleshooting runbook added.
- Rollback and recovery plan added.
- Security checklist added.
- Geospatial validation rules added.
- Build governance added.
- Codex pass documents added.
- Smoke scripts added.
- M6: implement actual backend foundation.
- M6: implement database migrations.
- M6: implement frontend shell.
M8 Codex Day-1 Readiness
- Add Day 1 master prompt.
- Add pass-by-pass Day 1 prompts.
- Add autonomy boundaries.
- Add failure recovery playbook.
- Add quality gate matrix.
- Add operator checklist.
- Add smoke script scaffold.
- Let Codex execute Day 1 implementation passes.
M10 Ultra Preparation
- Add autonomous build charter.
- Add Codex start-here guide.
- Add M10 master autonomous prompt.
- Add pass sequence.
- Add geometry and CRS contracts.
- Add error taxonomy.
- Add feature flag strategy.
- Add model adapter guide.
- Add QA/QC matching algorithm.
- Add frontend state machine.
- Add implementation ticket index and tickets.
- Add API example payloads.
- Add final pre-Codex checklist.
Current Workbench UI
- Replace the one-page workflow panel stack with a task-based workbench shell.
- Add persistent project/AOI/dataset/layer context.
- Move selected dataset details into a persistent inspector.
- Deploy the shell refactor to Tower and run live browser smoke on port 1202.
- Polish Data, Map and AI Labs workspaces.
- Polish QA/QC and Exports workspaces.
- Add selected-object inspector detail tabs for project, AOI, dataset, QA check, export and AI run context.
- Improve map/dataset selection ergonomics from the workbench canvas and inspector.
- Improve populated Data/Exports readability after a demo workflow run.
- Improve live visual shell width, scroll behavior and Map workspace layout at 1280px.
- Add export history filtering controls for long-running demo environments.
- Add a safe export retention/cleanup command for demo environments.
- Add a live dry-run maintenance smoke for demo export cleanup.
- Add browser screenshot artifact automation for visual regression handoff.
- Add backend error-envelope audit for expected user-error paths.
- Expand golden datasets beyond the original single building QA fixture pair.
- Add workbench visual polish pass for command bar, panel surfaces, empty states and mobile nav density.
- Add map/result overlay ergonomics for active layer provenance and feature property summaries.
- Add export/report handoff polish for artifact readiness, action grouping and export provenance.
- Polish lightweight HTML project report readability, print styling and handoff sections.
- Add Map empty-state quick actions for ready vector datasets.
- Add Data catalog role-density polish for reference/candidate/source scanning.
- Add Data catalog action polish for map, metadata, export and QA affordances.
- Add QA/QC handoff polish for candidate/reference context and persisted results.
- Add QA/QC metric card polish for precision, recall, F1, IoU and error counts.
- Add mobile overflow hardening for workbench navigation, inspector and long QA identifiers.
- Add QA/QC result filtering and density controls for long-running demo projects.
- Add Overview workflow guidance for the V1 project -> data -> map -> QA/AI -> export path.
- Audit populated demo workflow and tighten complete-state Overview guidance copy.
- Make Overview workflow rail Map/Export clicks preserve useful dataset context.
- Add latest handoff artifact cards to the Export Center for report, metadata and GeoJSON outputs.
- Add QA/QC evidence drilldown for selected checks, false-positive/negative evidence and provenance JSON.
- Add raster pipeline readiness and guardrail surfaces for metadata, CRS, preview, tile manifest and clip-AOI handoff.
- Add useful default dataset context so Data, Map and Exports are immediately usable after project/demo load.
- Make raster tile handoff to Detection Lab auto-select the configured YOLO run form.
- Add AI Lab run-readiness checks for Detection and Segmentation before job submission.
- Add AI Lab action guardrails so explicit fixture models are not exposed as normal operator runs.
- Add persisted vector area selection from the Map workspace with bbox extract and GeoJSON download.
- Persist map area selections as Export Center handoff artifacts.
- Persist map area selections as reusable derived vector datasets indexed into
vector_features. - Add Map workspace QA/QC shortcut for saved derived selection datasets.
- Add Map workspace QA/QC evidence drilldown handoff for saved selection comparisons.
- Persist QA/QC feature-level evidence for matches, false positives and false negatives.
- Render persisted QA/QC feature-level evidence as Map workspace overlays.
- Add safe local YOLO model env configuration helper for Unraid/Tower runtime activation.
- Harden configured YOLO inference for single-band raster tiles and wrapped runtime errors.