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>
1.7 KiB
1.7 KiB
Fase 3 — what has been built
supabase/migrations/008_tasks.sql—task_lists,taskswith completion-consistency CHECK (is_completed ⇔ completed_by ⇔ completed_at), helpertask_list_collective_id(), RLS by rolesupabase/migrations/009_notes.sql—noteswithnote_colorenum (8 values),is_pinned,is_archived(mutually exclusive via CHECK),deleted_at(7d trash window in RLS),fn_notes_touchtrigger refreshingupdated_at/updated_by,pg_cronjobpurge-deleted-notesat 03:10apps/web/src/lib/stores/tasks.ts— task lists CRUD (optimistic) + task ops (addTask,completeTask,renameTask,deleteTask,reorderTasks)apps/web/src/lib/stores/notes.ts—loadNotes/loadArchivedNotes/loadTrashedNotes,createNote,patchNote(always setsupdated_by),pinNote/unpinNote,archiveNote/unarchiveNote,trashNote/restoreNote,permanentDeleteNote,duplicateNote,NOTE_COLORS/tasks(overview) +/tasks/[id](detail withdndzonereorder +flipanimation; lazy-loadscollective_membersfor "Completed by …" attribution; 5s polling per analysis §6)/notes(board with pinned section testidnotes-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)