Efter en afsluttet opgave skal der fremover gås tilbage i plan mode
automatisk, i stedet for at fortsætte til næste opgave uden at spørge.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Offentlige endpoints afgør nu ruten via Host-headeren
(Route.public_domain) i stedet for route_id i URL'en, så én
frontend kan betjene flere organisationers domæner via reverse
proxy. GET /public/current-round returnerer altid 200 med
current_round: null når ingen runde er åben (i stedet for 404),
og nyt POST /public/signup lader deltagere tilmelde sig med kun
navn+email uden at røre et eksisterende telefonnummer.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Order/OrderLine now have a real write path (the public order API), so
their "model exists, no API yet" notes are replaced with what's
actually there. Participant's entry documents the ad-hoc-create/
always-update-on-order behavior. Mail-events #2 marked implemented
with the same detail level as #1. Fase 1 task 8 split into 8a (done)/
8b (pending, own stack decision) matching the 7a/7b/7c precedent.
Added a short process note at the top, per explicit user request:
this file should be updated after each (sub)task, not just on request.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Datamodel section now reflects reality: PurchaseRound's season/year
was replaced with opens_at/order_deadline_at/pickup_at + a free-text
name (per user feedback during task 2); WineOffering's vintage was
dropped (folded into name); added the MailTemplate/MailLog models and
Route's sender_name/sender_email that opgave 7 introduced; noted
Order/OrderLine exist as models but have no API yet.
Fase 1 task list marks 1-7 done and expands 7 into its actual 7a/7b/7c
shape. Added a short auth line (JWT + sudo-style elevation) and
resolved the "Mail: SMTP-udbyder — afklares" placeholder now that
Postal is wired up.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Config-driven DATABASE_URL shared by the app and Alembic's env.py
(fixes v1's config drift), psycopg3 driver, auto-discovering
app/models package for SQLModel.metadata, and a /health endpoint
that exercises the DB dependency end-to-end.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>