Files
adiuva/src
Roberto Musso 1794ab0416 feat: US-005 — Client tRPC procedures (CRUD)
Implemented full CRUD for the clients router:
- clients.list: returns all clients ordered by name
- clients.create: inserts with UUID + createdAt timestamp
- clients.update: partial update of name and/or industry
- clients.delete: guard check — returns error payload if client has
  sub-clients or projects (does not delete)
- clients.deleteWithCascade: BFS recursion to collect all descendant
  clients, nulls projectId on orphaned tasks, then deletes projects
  and all collected clients in order

Imports added: eq, asc, inArray from drizzle-orm; getDb and schema
tables (clients, projects, tasks) from db module.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-19 16:56:14 +01:00
..