/** * Adds the `chat_messages` table. * * Idempotent: safe to run against a fresh db (already created from schema.sql * with this table) or an existing one that predates it. * * @module */ import type { DatabaseSync } from "node:sqlite"; /** Applies this migration to `db`. */ export function up(db: DatabaseSync): void { db.exec(`CREATE TABLE IF NOT EXISTS chat_messages ( id TEXT NOT NULL PRIMARY KEY, user_id TEXT NOT NULL, body TEXT NOT NULL, created_at TEXT NOT NULL, updated_at TEXT, FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE );`); db.exec( `CREATE INDEX IF NOT EXISTS idx_chat_messages_created ON chat_messages(created_at);`, ); }