Update GeoIntel project files
GeoIntel release gates / Compile, test, contracts and builds (push) Canceled after 0s
GeoIntel release gates / Python and npm vulnerability policy (push) Canceled after 0s
GeoIntel release gates / GIS image, SBOM and container scan (push) Canceled after 0s

This commit is contained in:
Jens
2026-07-25 23:43:08 +02:00
parent 9db6cca2b1
commit d5ea270329
155 changed files with 37970 additions and 825 deletions
+42 -27
View File
@@ -1,44 +1,59 @@
# AI Agent Instructions for GeoIntel
# AGENTS.md
## Project identity
Project: DockDeck
GeoIntel is a GeoAI Workbench for Belgium and the Belgian North Sea, not a
generic CRUD app and not a generic dashboard. Mol and the Kempen remain golden
regression areas, not the product boundary.
Dit project gebruikt het Codex Project Operating System.
## Required behavior
## Werkmodus
- Read `docs/CODEX_BOOTSTRAP_PROMPT.md` first.
- Respect `docs/RC_SCOPE_FREEZE_BELGIUM_NORTH_SEA.md`.
- Use `docs/API_CONTRACTS.md` as source of truth for endpoints.
- Use `docs/DATABASE_IMPLEMENTATION_PLAN.md` as source of truth for persistence.
- Use `docs/DEFINITION_OF_DONE.md` to decide whether work is complete.
Volg deze stappen bij elke wijziging: begrijpen, ontwerpen, plannen, bouwen, testen, verbeteren, documenteren, committen.
## Agent roles
Startmodus: MVP bouwen
### Architecture Agent
- Codex mag scaffolden, bouwen, testen, committen en pushen wanneer de repo en remote duidelijk zijn.
- Bouw de kleinste bruikbare verticale flow eerst.
- Vraag alleen om hulp bij ontbrekende credentials, onduidelijke productkeuzes of risicovolle externe acties.
Owns repository layout, API contracts, database migrations and service boundaries.
## Autonomie
### GIS Agent
- Werk zelfstandig door waar de intentie duidelijk is.
- Stel alleen vragen wanneer een keuze het productgedrag, de architectuur of de veiligheid wezenlijk verandert.
- Houd wijzigingen klein, toetsbaar en passend bij het bestaande project.
- Gebruik de vastgelegde runtime-, sync-, persistentie-, deploy- en repo-keuzes als startpunt.
- Werk projectdocumentatie bij zodra besluiten, risico's of verificatie veranderen.
Owns GeoPandas, Shapely, Rasterio, CRS, clipping, buffering, spatial joins and metadata extraction.
## Autonomiegrenzen
### AI Agent
- Commit en push alleen wanneer de repo en remote duidelijk zijn.
- Deploy alleen wanneer het deploymentdoel, poort en credentials expliciet bekend zijn.
- Vraag om input bij ontbrekende credentials, betaalde diensten of destructieve acties.
- Stop en vraag bevestiging wanneer een actie gebruikersdata kan wijzigen, verwijderen of publiceren.
Owns YOLO/SAM abstractions, inference contracts, model configuration, detection/segmentation persistence and `not_configured` behavior.
## Veiligheid
### QA Agent
- Commit nooit secrets.
- Plaats geen API keys, tokens, wachtwoorden of klantdata in code, tests of logs.
- Verwacht credentials: Ja.
- Security/privacy notities: Gebruik uitsluitend environmentvariabelen voor gevoelige configuratie. Voorzie minimaal variabelen zoals GITEA_URL, GITEA_TOKEN en GITEA_OWNER voor repository-initialisatie en optionele NPM_URL, NPM_USERNAME en NPM_PASSWORD of een ondersteund read-only token voor Nginx Proxy Manager. Gebruik voor de Docker-koppeling geen onbeperkte socketmount in de applicatiecontainer, maar een afzonderlijke proxy met alleen de minimaal noodzakelijke read-endpoints. Sla secrets nooit op in SQLite, exports, logs, frontendbundels, testfixtures of Git. Toon gevoelige integratiewaarden gemaskeerd in de UI. De app mag geen Docker-mutaties uitvoeren en mag nooit containers starten, stoppen, herstarten, verwijderen of aanpassen. De MVP heeft geen eigen authenticatie en moet daarom standaard alleen op een lokaal bindadres of afgeschermd Docker-netwerk worden gepubliceerd. Externe toegang via Nginx Proxy Manager wordt alleen voorbereid; correcte authenticatie en toegangscontrole via bijvoorbeeld Authentik blijven de verantwoordelijkheid van een latere deploymentstap.
Owns tests, QA/QC metrics, regression checks and acceptance criteria.
## Quality Gate
### Frontend Agent
- Run de relevante tests voor elke gedragswijziging.
- Run lint/typecheck voor overdracht of commit.
- Noteer testresultaten in TEST_LOG.md.
- Laat bekende risico's achter in RISKS.md en HANDOFF.md.
- Verplichte finale gate: `npm run format:check`, `npm run lint`, `npm run typecheck`, `npm test`, `npm run test:e2e`, `npm run test:security`, `npm run build` en `npm audit --audit-level=moderate`.
- Valideer `docker compose config` en de imagebuild zodra een Docker-runtime beschikbaar is.
Owns React, TypeScript, MapLibre, API client, UI states and workbench UX.
## Productgrenzen
## Never do this
- Houd Docker-, Unraid- en NPM-integraties read-only.
- Voeg nooit Docker start/stop/restart/delete/exec- of andere beheeracties toe.
- Nieuwe discovery-records blijven standaard verborgen; integratiefouten mogen opgeslagen navigatie nooit blokkeren.
- Secrets blijven uitsluitend in environmentvariabelen en mogen niet in API-responses, SQLite, exports, logs, fixtures of browserbundels terechtkomen.
- De app heeft geen authenticatie en blijft standaard op `127.0.0.1` gebonden.
- Do not fake production AI outputs.
- Do not silently skip geospatial validation.
- Do not add auth/multi-user/LiDAR/training before V1 foundation is stable.
- Do not remove documentation to avoid conflicts.
## Resume Instructions
- Lees AGENTS.md, PROJECT_BRIEF.md, REQUIREMENTS.md, SPEC.md, PLAN.md, DECISIONS.md, TEST_LOG.md, RISKS.md en HANDOFF.md voordat je verder bouwt.
- Vat de huidige staat kort samen, bepaal de volgende stap uit PLAN.md en werk daarna de documentatie bij.