Close full operational audit findings
GeoIntel CI / docs-smoke (push) Canceled after 0s
GeoIntel CI / contract-smoke (push) Canceled after 0s

This commit is contained in:
Codex
2026-07-17 14:19:02 +02:00
parent cc36dabcbe
commit 78a5f0b0b2
81 changed files with 2248 additions and 1467 deletions
+13 -5
View File
@@ -90,12 +90,15 @@ Returns enabled feature flags and tool availability.
### GET `/api/v1/projects`
Returns active projects with `limit`/`offset` pagination. Optional exact
`name` filtering supports stable lookup of a canonical operational workspace
without depending on its position among newer operator or benchmark projects:
Returns active projects by default with `limit`/`offset` pagination. The
optional `status` query accepts `active`, `archived` or `all`; deleted projects
are never returned. Optional exact `name` filtering supports stable lookup of
a canonical operational workspace without depending on its position among
newer operator or benchmark projects:
```text
GET /api/v1/projects?name=Kempen%20Regional%20Workbench&limit=1
GET /api/v1/projects?status=archived&limit=50
```
### POST `/api/v1/projects`
@@ -118,11 +121,16 @@ Returns one project with summary counts.
### PATCH `/api/v1/projects/{project_id}`
Updates name/description/region.
Updates name, description, region or the ordinary lifecycle status. The status
can only be `active` or `archived`. Archiving keeps datasets, jobs, analyses,
quality checks and exports intact while removing the workspace from the
default active-project list.
### DELETE `/api/v1/projects/{project_id}`
Soft-delete in V1 preferred. Hard-delete only if storage cleanup is also implemented.
Marks the project as deleted. This route does not remove storage artifacts or
related persistence and is not the ordinary workspace-cleanup path. Operators
and the UI use `PATCH` with `status: "archived"` for reversible cleanup.
## Areas
+27
View File
@@ -9963,3 +9963,30 @@ Final live acceptance:
- Browser acceptance passed at 3440x1440 and 390x844 without horizontal page
overflow. Workspace navigation reset the real scrolling main container and
the browser console contained no warning or error.
## Sprint 234 - Full audit closure and workspace lifecycle cleanup (2026-07-17)
Implemented:
- Closed the remaining P1 project-pollution finding with reversible
`active`/`archived` lifecycle filtering. The default API and frontend load
active workspaces only; archived workspaces and all dependent persistence
remain available.
- Added `scripts/archive_technical_projects.py`. It is dry-run-first, uses a
strict technical-name allowlist and always preserves the canonical Kempen
and Mol workspaces. The all-in-one image packages it and readiness compiles
it.
- Added an explicit archive action for a selected non-canonical workspace.
The UI explains that data and results are retained and protects the two
canonical workspaces.
- Extracted Overview orchestration, Detection model management and pure Map
helpers from the largest frontend components. Shared state and API clients
remain unchanged.
- Reworded remaining visible operator terminology in the Map, Quality,
Detection, Segmentation and dataset controls. Technical UUIDs, file paths,
hashes and raw runtime states remain available only under labelled details.
- Added ultrawide AI-workspace constraints so controls use the available width
without creating multiple narrow nested columns.
Validation evidence is recorded after the complete compile, pytest, typecheck,
build, readiness, migration, deployment, live cleanup and browser acceptance
chain has completed.
+8
View File
@@ -35,6 +35,14 @@ geen open productroadmap meer.
hoogte-, overstromings- of thematische beleidsrasters.
- [x] Draai de volledige applicatie in de beheersbare Unraid-container op poort
1202 met PostGIS, backend, frontend, Ollama-koppeling en modelconfiguratie.
- [x] Archiveer allowlisted benchmark-, kalibratie- en rooktestwerkruimtes
om de actieve projectlijst beheersbaar te houden, zonder gegevens of
resultaten te verwijderen.
- [x] Verberg technische identifiers, modeldetails en interne statussen achter
expliciete technische details en gebruik uniforme Nederlandse taaktaal in
kaart-, kwaliteits-, detectie- en segmentatiewerkstromen.
- [x] Begrens de grootste frontendverantwoordelijkheden met afzonderlijke
overzichts-, modelbeheer- en kaarthelpermodules zonder gedrag te wijzigen.
Bewuste, niet-blokkerende grenzen: