Files
Oier Bravo Urtasun 768b3cda58 docs: split CLAUDE.md into docs/{development,deployment,history/fase-*}
CLAUDE.md shrinks to rules + status + index (175 lines, down from 476).
Dev setup, prod deploy, and per-phase build records move to docs/.
Gotchas regrouped by domain (auth, frontend, PWA, testing, backend, deploy,
platform) and unnumbered so they don't drift as new ones land.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-18 22:21:20 +02:00

1.7 KiB

Fase 3 — what has been built

  • supabase/migrations/008_tasks.sqltask_lists, tasks with completion-consistency CHECK (is_completed ⇔ completed_by ⇔ completed_at), helper task_list_collective_id(), RLS by role
  • supabase/migrations/009_notes.sqlnotes with note_color enum (8 values), is_pinned, is_archived (mutually exclusive via CHECK), deleted_at (7d trash window in RLS), fn_notes_touch trigger refreshing updated_at/updated_by, pg_cron job purge-deleted-notes at 03:10
  • apps/web/src/lib/stores/tasks.ts — task lists CRUD (optimistic) + task ops (addTask, completeTask, renameTask, deleteTask, reorderTasks)
  • apps/web/src/lib/stores/notes.tsloadNotes/loadArchivedNotes/loadTrashedNotes, createNote, patchNote (always sets updated_by), pinNote/unpinNote, archiveNote/unarchiveNote, trashNote/restoreNote, permanentDeleteNote, duplicateNote, NOTE_COLORS
  • /tasks (overview) + /tasks/[id] (detail with dndzone reorder + flip animation; lazy-loads collective_members for "Completed by …" attribution; 5s polling per analysis §6)
  • /notes (board with pinned section testid notes-pinned) + /notes/[id] (editor: title input + textarea, 500ms debounced autosave, color picker, pin/archive/duplicate/trash) + /notes/archive + /notes/trash (30s polling on board)
  • apps/web/messages/{en,es}.json — full Tareas + Notas string set (tasks_*, notes_*)
  • pgTAP 005_tasks_rls.sql (5 tests on the completion CHECK), 006_notes_trash_purge.sql (4 tests: inline-runs the purge SQL + verifies pin/archive CHECK)
  • Vitest rls-tasks.test.ts (14 tests) + rls-notes.test.ts (15 tests)
  • Playwright tasks.test.ts (3 tests) + notes.test.ts (4 tests)