Arthur Belleville
|
68884daf11
|
feat(12-01): add discussion schema and queries
|
2026-05-16 10:07:12 +02:00 |
|
Arthur Belleville
|
0bfe8cfbb4
|
feat(10-01): add events calendar creation slice
|
2026-05-16 00:27:58 +02:00 |
|
Arthur Belleville
|
565bb88df5
|
feat(09-01): add etape task slice
|
2026-05-15 22:40:25 +02:00 |
|
Arthur Belleville
|
2d004cd251
|
feat(08-01): add social identity schema foundation
|
2026-05-15 20:59:34 +02:00 |
|
Arthur Belleville
|
e0d72747e0
|
feat(05-01): add aws-sdk-go-v2 modules, 0005_files migration, sqlc queries, and files.Store
- Add four aws-sdk-go-v2 modules: core, config, credentials, service/s3
- Write 0005_files.sql migration (tablo_files table with ON DELETE CASCADE)
- Write internal/db/queries/files.sql with InsertTabloFile, ListFilesByTablo, GetTabloFileByID, DeleteTabloFile
- Implement internal/files/store.go: FileStorer interface, Store struct, NewStore (UsePathStyle for MinIO), Upload (sniff+stream+bytecount), Delete, PresignDownload
- sqlc generate produces files.sql.go + TabloFile model (gitignored, regeneratable)
|
2026-05-15 12:18:16 +02:00 |
|
Arthur Belleville
|
c9c826247a
|
feat(04-01): add tasks migration and sqlc query source
- CREATE TYPE task_status ENUM (todo, in_progress, in_review, done)
- CREATE TABLE tasks with tablo_id FK, position, status columns
- DROP order: table before type in Down migration (Pitfall 3)
- sqlc queries: ListTasksByTablo, InsertTask, GetTaskByID, UpdateTask, DeleteTask, MaxPositionByTabloAndStatus
- migration applied cleanly, sqlc generate produces TaskStatus type and Task struct
|
2026-05-15 09:22:18 +02:00 |
|
Arthur Belleville
|
f1b8d6e629
|
feat(03-01): add tablos migration and sqlc queries
- 0003_tablos.sql: tablos table with user_id FK + ON DELETE CASCADE + tablos_user_id_idx
- tablos.sql: 5 named queries (ListTablosByUser, GetTabloByID, InsertTablo, UpdateTablo, DeleteTablo)
- UpdateTablo sets updated_at = now() explicitly (Pitfall 7)
- color not editable in UpdateTablo per Phase 3 scope
- sqlc generates Tablo struct with pgtype.Text for description/color (not committed per .gitignore convention)
|
2026-05-15 00:10:40 +02:00 |
|
Arthur Belleville
|
513044de58
|
feat(02-01): add 0002_auth.sql migration with users + sessions tables
- citext extension + pgcrypto for gen_random_uuid()
- users: id uuid PK, email citext UNIQUE, password_hash, created_at, updated_at (D-01)
- sessions: id text PK (SHA-256 hex), user_id FK ON DELETE CASCADE, created_at, expires_at (D-04)
- indexes on sessions(user_id) and sessions(expires_at)
- no deleted_at, email_verified_at, user_agent, ip_address columns (D-02, D-03, D-04)
- goose Up/Down round-trip verified against compose Postgres
|
2026-05-14 21:51:37 +02:00 |
|
Arthur Belleville
|
2fe5b51f80
|
feat(01-01): compose file, env example, gitignore, bootstrap migration
- compose.yaml: postgres:16-alpine with pg_isready healthcheck (no seed mounts)
- .env.example: DATABASE_URL, PORT, ENV (D-15)
- .gitignore: bin/, tmp/, .env, generated tailwind.css, bootstrap-downloaded htmx.min.js, *_templ.go, sqlc output
- migrations/0001_init.sql: goose no-op bootstrap migration
|
2026-05-14 17:54:18 +02:00 |
|
Arthur Belleville
|
4de96854b5
|
feat(01-01): create directory skeleton and per-package doc.go placeholders
- internal/{db,session,tablos,tasks,files}/doc.go (D-02 placeholder packages)
- internal/db/{queries,sqlc}, templates/, migrations/, bin/, static/ via .gitkeep
- 'go build ./internal/...' compiles cleanly
- cmd/web, cmd/worker, internal/web are deliberately deferred to Plans 01-02 / 01-03
|
2026-05-14 17:53:55 +02:00 |
|