GeoIntel release gates / Compile, test, contracts and builds (push) Successful in 1m49s
GeoIntel release gates / Python and npm vulnerability policy (push) Successful in 21s
GeoIntel release gates / Production AI image, SBOM and container scan (push) Successful in 5m39s
GeoIntel release gates / Deploy exact gated revision to Unraid (push) Failing after 58m43s
131 lines
2.7 KiB
Markdown
131 lines
2.7 KiB
Markdown
# Implementation Epics
|
|
|
|
## EPIC 01 — Repository and Runtime Foundation
|
|
|
|
Goal: create a runnable full-stack foundation with backend, frontend, database, worker and shared conventions.
|
|
|
|
Must deliver:
|
|
|
|
- FastAPI app booting
|
|
- health endpoints
|
|
- SQLAlchemy/Alembic setup
|
|
- PostGIS-enabled PostgreSQL connection
|
|
- React app booting
|
|
- Docker Compose local stack
|
|
- basic CI-friendly test commands
|
|
|
|
## EPIC 02 — Project and Area Management
|
|
|
|
Goal: allow users to create project workspaces and define Kempen analysis areas.
|
|
|
|
Must deliver:
|
|
|
|
- project CRUD
|
|
- area CRUD
|
|
- polygon validation
|
|
- area surface calculation
|
|
- geometry storage in PostGIS
|
|
- frontend project dashboard
|
|
- map drawing workflow
|
|
|
|
## EPIC 03 — Dataset Manager
|
|
|
|
Goal: upload, register and inspect geospatial datasets.
|
|
|
|
Must deliver:
|
|
|
|
- dataset upload endpoint
|
|
- metadata extraction
|
|
- storage path registration
|
|
- dataset table
|
|
- dataset detail page
|
|
- processing status model
|
|
|
|
## EPIC 04 — Raster Foundation
|
|
|
|
Goal: support GeoTIFF metadata, preview, clipping and tiling readiness.
|
|
|
|
Must deliver:
|
|
|
|
- Rasterio metadata extraction
|
|
- bounds, CRS, band count, resolution
|
|
- clip request contract
|
|
- tile generation contract
|
|
- raster preview placeholder backed by real metadata
|
|
|
|
## EPIC 05 — Vector Foundation
|
|
|
|
Goal: support GeoJSON/Shapefile/GPKG import and core vector operations.
|
|
|
|
Must deliver:
|
|
|
|
- GeoPandas import
|
|
- CRS transform
|
|
- clip to area
|
|
- area/perimeter calculation
|
|
- vector layer display/export
|
|
|
|
## EPIC 06 — GRB Reference Integration
|
|
|
|
Goal: retrieve GRB features for selected areas and cache them in PostGIS.
|
|
|
|
Must deliver:
|
|
|
|
- GRB source config
|
|
- WFS request service
|
|
- cache table or dataset registration
|
|
- building reference layer
|
|
- failure handling and source metadata
|
|
|
|
## EPIC 07 — Detection Pipeline Skeleton
|
|
|
|
Goal: run object detection over prepared raster tiles and store georeferenced outputs.
|
|
|
|
Must deliver:
|
|
|
|
- model registry stub
|
|
- detection job request
|
|
- tile inference interface
|
|
- detections table
|
|
- GeoJSON export
|
|
- map overlay
|
|
|
|
The first implementation may use a deterministic fixture model only if the full interface is identical to a future YOLO implementation.
|
|
|
|
## EPIC 08 — QA/QC Engine
|
|
|
|
Goal: compare detections against GRB reference features.
|
|
|
|
Must deliver:
|
|
|
|
- spatial matching
|
|
- IoU calculation
|
|
- precision/recall/F1
|
|
- false positives/false negatives
|
|
- QA result layer
|
|
- metrics panel
|
|
|
|
## EPIC 09 — Export Layer
|
|
|
|
Goal: export useful outputs.
|
|
|
|
Must deliver:
|
|
|
|
- GeoJSON export
|
|
- analysis metadata export
|
|
- QA summary JSON
|
|
- future-compatible report registry
|
|
|
|
## EPIC 10 — Stabilization and Polish
|
|
|
|
Goal: make the MVP coherent, testable and demo-ready.
|
|
|
|
Must deliver:
|
|
|
|
- error states
|
|
- empty states
|
|
- loading states
|
|
- validation messages
|
|
- test coverage on critical services
|
|
- changelog and release notes
|