Oppretter Caddyfile med:
- auth.sidelinja.org → Authentik SSO
- sidelinja.org → SpacetimeDB (/spacetime/*), media (/media/*), SvelteKit (placeholder)
- api.sidelinja.org → maskinrommet (placeholder, 503 til fase 2)
- git.sidelinja.org → Forgejo
- vegard.info → placeholder
Auto-TLS via Let's Encrypt. Tjenester som ikke er deployet ennå bruker
respond-placeholders — kommentert reverse_proxy aktiveres når containerne
er klare. Verifisert på server: alle domener svarer med korrekt status.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Oppretter SpacetimeDB Rust-modul som speiler PG-skjema:
- Node-tabell (id, node_kind, title, content, visibility, metadata, timestamps)
- Edge-tabell (id, source_id, target_id, edge_type, metadata, system flag)
- CRUD-reducers: create/update/delete for begge tabeller
- clear_all reducer for warmup-reset
- Cascade-delete av edges ved node-sletting
Deployet til SpacetimeDB-instans på server (database: synops).
SpacetimeDB lagt til i docker-compose på serveren.
Verifisert med spacetime sql og call: tabeller fungerer,
CRUD-operasjoner fungerer, cascade-delete fungerer.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Oppretter kjernedataene som resten av systemet bygger på:
- Vegards person-node med auth_identity (placeholder authentik_sub,
oppdateres i oppgave 1.5 når Authentik konfigureres)
- Sidelinja samlings-node (tenant for podcastredaksjonen)
- Owner-edge fra Vegard til Sidelinja
- node_access-rad via recompute_access()
Kjørt og verifisert på server (sidelinja-postgres-1, synops-db).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Oppretter database `synops` på serveren med kjerneskjemaet:
- Enums: visibility (hidden/discoverable/readable/open),
access_level (reader/member/admin/owner)
- Tabeller: nodes, edges, node_access, auth_identities
- Funksjon: recompute_access for tilgangsmatrise-oppdatering
- Indekser iht. docs/primitiver/nodes.md og edges.md
Migrasjonen er kjørt og verifisert på produksjonsserver
(sidelinja-postgres-1, database: synops).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
claude --print alene stoppet på manglende write-permission.
Tilbakestiller oppgave 1.1 for ny kjøring.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
tasks.md: Ny status [~] (pågår) med timestamp. Fjernet code-fence
eksempler som ble fanget av grep som ekte oppgaver.
run-next-task.sh: Markerer oppgave som [~] før start, tilbakestiller
ved krasj. --unstale frigjør oppgaver >60 min. Sjekker at forrige
oppgave i fasen er ferdig. Pull-instruksjon i prompt. Subagent-bruk
oppfordres der det er egnet.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
tasks.md: 51 oppgaver i 12 faser med avhengighetskart og
statusmarkører ([?] for åpne spørsmål, [!] for blokkert).
run-next-task.sh: plukker neste tilgjengelige oppgave, hopper
over blokkerte faser og deres avhengigheter, starter fersk
Claude Code-sesjon med full kontekst-prompt.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>