feat(db): @mosaic/db — Drizzle schema, PG connection, migrations
Implements P0-003: shared database package with Drizzle ORM. Schema: 13 tables across 3 domains: - Auth (BetterAuth-compatible): users, sessions, accounts, verifications - Brain: projects, missions, tasks, events, agents, tickets, appreciations - Chat: conversations, messages Features: - createDb() factory with pool cleanup via DbHandle.close() - runMigrations() with try/finally for connection safety - drizzle-kit config for generate/push/migrate/studio - Full FK relationships and indexes on query-hot columns - ESM package with NodeNext resolution Verified: schema pushed to PG 17, CRUD round-trip tested. Closes #3 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
10
packages/db/drizzle.config.ts
Normal file
10
packages/db/drizzle.config.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
import { defineConfig } from 'drizzle-kit';
|
||||
|
||||
export default defineConfig({
|
||||
schema: './src/schema.ts',
|
||||
out: './drizzle',
|
||||
dialect: 'postgresql',
|
||||
dbCredentials: {
|
||||
url: process.env['DATABASE_URL'] ?? 'postgresql://mosaic:mosaic@localhost:5433/mosaic',
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user