Synops — redaksjonelt OS og kunnskapsgraf
Implementerer tre nye skrivestier i maskinrommet med tilgangskontroll: - POST /intentions/create_edge — opprett retningsbestemt edge mellom to noder. Validerer at begge noder eksisterer og edge_type er satt. - POST /intentions/update_node — partial update av eksisterende node. Kun oppgitte felter endres, resten beholdes fra PG. - POST /intentions/delete_node — slett node med cascade av edges. Tilgangskontroll for update/delete: brukeren må enten være created_by på noden, eller ha en owner/admin-edge til den. Sjekkes mot PG som autoritativ kilde. Alle endepunkter følger samme mønster som create_node: STDB-skriving (instant) → async PG-persistering → umiddelbar respons. Verifisert på server med 10 testcaser: 1. /me med gyldig token → 200 2. create_node → 200 med node_id 3. create_edge (gyldig) → 200 med edge_id 4. create_edge (ugyldig source) → 400 5. create_edge (tom edge_type) → 400 6. update_node (partial, eier) → 200 7. update_node (ingen tilgang) → 403 8. delete_node (eier) → 200 9. delete_node (ingen tilgang) → 403 10. update via owner-edge (Sidelinja) → 200 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| config | ||
| docs | ||
| maskinrommet | ||
| migrations | ||
| ops | ||
| reference | ||
| scripts | ||
| spacetimedb | ||
| .env.example | ||
| .gitignore | ||
| CLAUDE.md | ||
| spacetime.json | ||
| tasks.md | ||