- tasks.list: replace status filter with state_group (backlog/unstarted/started/completed/cancelled)
- tasks.create: remove obsolete status param (tasks now use state_id FK)
- tasks.update: remove obsolete status param
- Implement state_group filtering via EXISTS subquery on states table
- Update API.md example to use state_group instead of status
- Add @project-e/db package with Drizzle schema and migrations
- Replace PocketBase client with PostgreSQL-based database client
- Migrate auth from custom to NextAuth.js
- Add Docker Compose with PostgreSQL container
- Update worker to use new database client
- Remove PocketBase-specific files and migrations
- Add drizzle config and initial migration