dorfteich/apps/api/prisma/migrations
Claude Sonnet 5 0fae699018
All checks were successful
CD / Build and push images (push) Successful in 2m2s
CI / Lint, typecheck, test (push) Successful in 1m43s
CI / Auth e2e pack (push) Successful in 1m48s
CI / Build container images (push) Has been skipped
CD / Deploy to Test (push) Successful in 8s
CD / Smoke tests against Test (push) Successful in 1m10s
CD / Promote to Int (push) Successful in 10s
Add file storage service and image upload API (#27)
Implements the FileStorage abstraction (uploads/<pondId>/<fileId> on the
mounted volume), the attachments model, and POST /ponds/:id/files, GET
/media/:fileId, DELETE /files/:id. Uploads are validated by sniffing
magic bytes rather than trusting the client's Content-Type/filename
(catches a renamed .html-as-.png), checked against the max_file_bytes
and storage_bytes quotas, and served with nosniff + immutable caching.

Closes #27
2026-07-08 10:35:03 +02:00
..
20260704171456_init Add Prisma with PostgreSQL, automatic migrations, and /readyz 2026-07-04 19:16:44 +02:00
20260704224132_auth_models Add user, identity, session, and auth-support data model 2026-07-05 00:42:22 +02:00
20260705090100_ponds Ponds: data model, CRUD API, personal pond on verification (#21) 2026-07-05 11:08:16 +02:00
20260705185146_quotas Quota foundation: overrides, resolution, race-safe consumption (#22) 2026-07-05 20:55:59 +02:00
20260705200714_pages Add page CRUD and Yjs state persistence (#23) 2026-07-05 22:25:41 +02:00
20260708082627_attachments Add file storage service and image upload API (#27) 2026-07-08 10:35:03 +02:00
migration_lock.toml Add Prisma with PostgreSQL, automatic migrations, and /readyz 2026-07-04 19:16:44 +02:00