document the analysis contracts and correct the job-queue claim

The README's architecture diagram and stack list promised Redis + RQ. There is
no such thing in this codebase: redis_url is a settings field nothing reads,
rq is not a dependency, and the only worker is an asyncio poller over a
Postgres job table. Describe what exists.

API_CONTRACTS and KNOWN_LIMITATIONS gain the rules a reader needs to interpret
a result: deterministic confidence-ranked matching, the precision/recall curve,
the three flood-hazard cell populations, the sub-cell selection fallback, the
whole-feature object count next to clipped area metrics, and the required
manifest CRS. The new limitations are stated as limits rather than buried:
raster analysis has no sub-cell precision, and the object count is not
fractional.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Jens
2026-08-22 14:34:33 +02:00
co-authored by Claude Opus 5
parent 3e4e211fad
commit d29d572e8c
4 changed files with 153 additions and 14 deletions
+4 -4
View File
@@ -90,7 +90,7 @@ verbergen.
| Tijd | Immutable DatasetVersions en vergelijking van ruimtelijke snapshots |
| QA/QC | Precision, recall, F1, IoU, false-positive/-negative evidence en reviews |
| Export | Reproduceerbare GeoJSON- en artefactexports met provenance |
| Runtime | DockerMan-native Unraid-container met PostGIS, Redis, backend en frontend |
| Runtime | DockerMan-native Unraid-container met PostGIS, backend en frontend |
## Architectuur
@@ -98,7 +98,7 @@ verbergen.
flowchart LR
UI["React + MapLibre workbench"] --> API["FastAPI contracts"]
API --> GIS["GeoPandas / Shapely / Rasterio"]
API --> JOBS["Redis + RQ"]
API --> JOBS["Job-queue in PostgreSQL"]
JOBS --> AI["PyTorch / YOLO / SAM"]
GIS --> DB[("PostgreSQL + PostGIS")]
AI --> DB
@@ -118,12 +118,12 @@ PostGIS en de persistentieregels volgen
- **Spatial:** GeoPandas, Shapely, Rasterio, PyProj en GDAL
- **AI:** PyTorch, Ultralytics YOLO en SAM-compatibele segmentatie
- **Data:** PostgreSQL/PostGIS, lokale artefactopslag en immutable versions
- **Jobs:** Redis en RQ
- **Jobs:** job-tabel in PostgreSQL met achtergrondworkers in het API-proces
- **Deployment:** één DockerMan-native Unraid-container
## Lokaal starten
Vereisten: Python 3.11+, Node 20.19+ of 22.12+, PostgreSQL/PostGIS en Redis.
Vereisten: Python 3.11+, Node 20.19+ of 22.12+ en PostgreSQL/PostGIS.
```bash
python -m pip install -e backend/.[dev]