Initial public release
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
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
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
# Backend Skeleton
|
||||
|
||||
## Objective
|
||||
Create FastAPI app, config loader, health endpoint, diagnostics endpoint, error taxonomy, logging, pytest setup.
|
||||
|
||||
## Required Inputs
|
||||
- Read relevant docs in `docs/` and `docs/18-ultra-prep/`.
|
||||
- Keep V1 scope frozen.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] API or UI path works.
|
||||
- [ ] Errors are typed.
|
||||
- [ ] Tests cover happy path and one failure path.
|
||||
- [ ] Documentation/TODO updated.
|
||||
- [ ] No fake success states.
|
||||
|
||||
## Out of Scope
|
||||
- LiDAR
|
||||
- Training Studio
|
||||
- MLOps
|
||||
- QGIS plugin
|
||||
- Undocumented architecture changes
|
||||
@@ -0,0 +1,22 @@
|
||||
# Database Foundation
|
||||
|
||||
## Objective
|
||||
Add PostGIS-ready database layer, migrations, core tables, geometry columns, created/updated timestamps.
|
||||
|
||||
## Required Inputs
|
||||
- Read relevant docs in `docs/` and `docs/18-ultra-prep/`.
|
||||
- Keep V1 scope frozen.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] API or UI path works.
|
||||
- [ ] Errors are typed.
|
||||
- [ ] Tests cover happy path and one failure path.
|
||||
- [ ] Documentation/TODO updated.
|
||||
- [ ] No fake success states.
|
||||
|
||||
## Out of Scope
|
||||
- LiDAR
|
||||
- Training Studio
|
||||
- MLOps
|
||||
- QGIS plugin
|
||||
- Undocumented architecture changes
|
||||
@@ -0,0 +1,22 @@
|
||||
# Project and Area Domain
|
||||
|
||||
## Objective
|
||||
Implement project CRUD and area CRUD with GeoJSON validation, CRS handling, area calculation, and tests.
|
||||
|
||||
## Required Inputs
|
||||
- Read relevant docs in `docs/` and `docs/18-ultra-prep/`.
|
||||
- Keep V1 scope frozen.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] API or UI path works.
|
||||
- [ ] Errors are typed.
|
||||
- [ ] Tests cover happy path and one failure path.
|
||||
- [ ] Documentation/TODO updated.
|
||||
- [ ] No fake success states.
|
||||
|
||||
## Out of Scope
|
||||
- LiDAR
|
||||
- Training Studio
|
||||
- MLOps
|
||||
- QGIS plugin
|
||||
- Undocumented architecture changes
|
||||
@@ -0,0 +1,22 @@
|
||||
# Dataset Manager
|
||||
|
||||
## Objective
|
||||
Implement upload/register/list/detail dataset flows, storage path policy, metadata status state machine, and file validation.
|
||||
|
||||
## Required Inputs
|
||||
- Read relevant docs in `docs/` and `docs/18-ultra-prep/`.
|
||||
- Keep V1 scope frozen.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] API or UI path works.
|
||||
- [ ] Errors are typed.
|
||||
- [ ] Tests cover happy path and one failure path.
|
||||
- [ ] Documentation/TODO updated.
|
||||
- [ ] No fake success states.
|
||||
|
||||
## Out of Scope
|
||||
- LiDAR
|
||||
- Training Studio
|
||||
- MLOps
|
||||
- QGIS plugin
|
||||
- Undocumented architecture changes
|
||||
@@ -0,0 +1,22 @@
|
||||
# Vector Processing
|
||||
|
||||
## Objective
|
||||
Implement GeoJSON import, metadata extraction, CRS transform, clipping, basic metrics, and invalid geometry handling.
|
||||
|
||||
## Required Inputs
|
||||
- Read relevant docs in `docs/` and `docs/18-ultra-prep/`.
|
||||
- Keep V1 scope frozen.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] API or UI path works.
|
||||
- [ ] Errors are typed.
|
||||
- [ ] Tests cover happy path and one failure path.
|
||||
- [ ] Documentation/TODO updated.
|
||||
- [ ] No fake success states.
|
||||
|
||||
## Out of Scope
|
||||
- LiDAR
|
||||
- Training Studio
|
||||
- MLOps
|
||||
- QGIS plugin
|
||||
- Undocumented architecture changes
|
||||
@@ -0,0 +1,22 @@
|
||||
# Raster Processing
|
||||
|
||||
## Objective
|
||||
Implement raster metadata extraction, band info, bounds, resolution, overviews awareness, and safe no-preview state if unsupported.
|
||||
|
||||
## Required Inputs
|
||||
- Read relevant docs in `docs/` and `docs/18-ultra-prep/`.
|
||||
- Keep V1 scope frozen.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] API or UI path works.
|
||||
- [ ] Errors are typed.
|
||||
- [ ] Tests cover happy path and one failure path.
|
||||
- [ ] Documentation/TODO updated.
|
||||
- [ ] No fake success states.
|
||||
|
||||
## Out of Scope
|
||||
- LiDAR
|
||||
- Training Studio
|
||||
- MLOps
|
||||
- QGIS plugin
|
||||
- Undocumented architecture changes
|
||||
@@ -0,0 +1,22 @@
|
||||
# Frontend Foundation
|
||||
|
||||
## Objective
|
||||
Implement React app shell, routing, API client, status provider, layout, navigation, and state machine utilities.
|
||||
|
||||
## Required Inputs
|
||||
- Read relevant docs in `docs/` and `docs/18-ultra-prep/`.
|
||||
- Keep V1 scope frozen.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] API or UI path works.
|
||||
- [ ] Errors are typed.
|
||||
- [ ] Tests cover happy path and one failure path.
|
||||
- [ ] Documentation/TODO updated.
|
||||
- [ ] No fake success states.
|
||||
|
||||
## Out of Scope
|
||||
- LiDAR
|
||||
- Training Studio
|
||||
- MLOps
|
||||
- QGIS plugin
|
||||
- Undocumented architecture changes
|
||||
@@ -0,0 +1,22 @@
|
||||
# Map Workbench
|
||||
|
||||
## Objective
|
||||
Implement MapLibre view, drawing/importing area, layer toggles, dataset overlays, selected feature inspect panel.
|
||||
|
||||
## Required Inputs
|
||||
- Read relevant docs in `docs/` and `docs/18-ultra-prep/`.
|
||||
- Keep V1 scope frozen.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] API or UI path works.
|
||||
- [ ] Errors are typed.
|
||||
- [ ] Tests cover happy path and one failure path.
|
||||
- [ ] Documentation/TODO updated.
|
||||
- [ ] No fake success states.
|
||||
|
||||
## Out of Scope
|
||||
- LiDAR
|
||||
- Training Studio
|
||||
- MLOps
|
||||
- QGIS plugin
|
||||
- Undocumented architecture changes
|
||||
@@ -0,0 +1,22 @@
|
||||
# Dataset UI
|
||||
|
||||
## Objective
|
||||
Implement dataset upload/list/detail/status/error/empty states and link to map layers.
|
||||
|
||||
## Required Inputs
|
||||
- Read relevant docs in `docs/` and `docs/18-ultra-prep/`.
|
||||
- Keep V1 scope frozen.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] API or UI path works.
|
||||
- [ ] Errors are typed.
|
||||
- [ ] Tests cover happy path and one failure path.
|
||||
- [ ] Documentation/TODO updated.
|
||||
- [ ] No fake success states.
|
||||
|
||||
## Out of Scope
|
||||
- LiDAR
|
||||
- Training Studio
|
||||
- MLOps
|
||||
- QGIS plugin
|
||||
- Undocumented architecture changes
|
||||
@@ -0,0 +1,22 @@
|
||||
# Detection Adapter
|
||||
|
||||
## Objective
|
||||
Implement detection analysis run, adapter interface, demo adapter, result persistence, GeoJSON result endpoint.
|
||||
|
||||
## Required Inputs
|
||||
- Read relevant docs in `docs/` and `docs/18-ultra-prep/`.
|
||||
- Keep V1 scope frozen.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] API or UI path works.
|
||||
- [ ] Errors are typed.
|
||||
- [ ] Tests cover happy path and one failure path.
|
||||
- [ ] Documentation/TODO updated.
|
||||
- [ ] No fake success states.
|
||||
|
||||
## Out of Scope
|
||||
- LiDAR
|
||||
- Training Studio
|
||||
- MLOps
|
||||
- QGIS plugin
|
||||
- Undocumented architecture changes
|
||||
@@ -0,0 +1,22 @@
|
||||
# QA/QC Engine
|
||||
|
||||
## Objective
|
||||
Implement matching between predicted/reference polygons, IoU/precision/recall/F1, output layers and tests.
|
||||
|
||||
## Required Inputs
|
||||
- Read relevant docs in `docs/` and `docs/18-ultra-prep/`.
|
||||
- Keep V1 scope frozen.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] API or UI path works.
|
||||
- [ ] Errors are typed.
|
||||
- [ ] Tests cover happy path and one failure path.
|
||||
- [ ] Documentation/TODO updated.
|
||||
- [ ] No fake success states.
|
||||
|
||||
## Out of Scope
|
||||
- LiDAR
|
||||
- Training Studio
|
||||
- MLOps
|
||||
- QGIS plugin
|
||||
- Undocumented architecture changes
|
||||
@@ -0,0 +1,22 @@
|
||||
# Export Engine
|
||||
|
||||
## Objective
|
||||
Implement GeoJSON export for projects/areas/datasets/detections/QA findings with manifest metadata.
|
||||
|
||||
## Required Inputs
|
||||
- Read relevant docs in `docs/` and `docs/18-ultra-prep/`.
|
||||
- Keep V1 scope frozen.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] API or UI path works.
|
||||
- [ ] Errors are typed.
|
||||
- [ ] Tests cover happy path and one failure path.
|
||||
- [ ] Documentation/TODO updated.
|
||||
- [ ] No fake success states.
|
||||
|
||||
## Out of Scope
|
||||
- LiDAR
|
||||
- Training Studio
|
||||
- MLOps
|
||||
- QGIS plugin
|
||||
- Undocumented architecture changes
|
||||
@@ -0,0 +1,22 @@
|
||||
# Demo Workflow
|
||||
|
||||
## Objective
|
||||
Create guided Geel demo using fixtures to exercise area -> reference -> detection -> QA -> export workflow.
|
||||
|
||||
## Required Inputs
|
||||
- Read relevant docs in `docs/` and `docs/18-ultra-prep/`.
|
||||
- Keep V1 scope frozen.
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] API or UI path works.
|
||||
- [ ] Errors are typed.
|
||||
- [ ] Tests cover happy path and one failure path.
|
||||
- [ ] Documentation/TODO updated.
|
||||
- [ ] No fake success states.
|
||||
|
||||
## Out of Scope
|
||||
- LiDAR
|
||||
- Training Studio
|
||||
- MLOps
|
||||
- QGIS plugin
|
||||
- Undocumented architecture changes
|
||||
@@ -0,0 +1,24 @@
|
||||
# Ticket Index
|
||||
|
||||
This folder translates the blueprint into implementation-ready tickets.
|
||||
|
||||
## Foundation
|
||||
- `T-001-backend-skeleton.md`
|
||||
- `T-002-database-foundation.md`
|
||||
- `T-003-project-area-domain.md`
|
||||
|
||||
## Data
|
||||
- `T-010-dataset-manager.md`
|
||||
- `T-011-vector-processing.md`
|
||||
- `T-012-raster-processing.md`
|
||||
|
||||
## Frontend
|
||||
- `T-020-frontend-foundation.md`
|
||||
- `T-021-map-workbench.md`
|
||||
- `T-022-dataset-ui.md`
|
||||
|
||||
## AI/QA
|
||||
- `T-030-detection-adapter.md`
|
||||
- `T-031-qaqc-engine.md`
|
||||
- `T-032-export-engine.md`
|
||||
- `T-033-demo-workflow.md`
|
||||
Reference in New Issue
Block a user