Files
2026-07-13 13:00:08 +08:00

35 lines
1.0 KiB
SQL

-- One-time upgrade of the live reasonix-crash DB to the account system.
-- Apply once: wrangler d1 execute reasonix-crash --remote --file=migrate.sql
-- The ALTERs are not idempotent; the CREATEs are. Fresh installs use schema.sql.
ALTER TABLE groups ADD COLUMN status TEXT NOT NULL DEFAULT 'open';
ALTER TABLE groups ADD COLUMN note TEXT NOT NULL DEFAULT '';
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY AUTOINCREMENT,
email TEXT NOT NULL UNIQUE,
password_hash TEXT NOT NULL,
role TEXT NOT NULL DEFAULT 'pending',
created_at TEXT NOT NULL,
approved_at TEXT,
approved_by INTEGER
);
CREATE TABLE IF NOT EXISTS sessions (
token TEXT PRIMARY KEY,
user_id INTEGER NOT NULL,
created_at TEXT NOT NULL,
expires_at TEXT NOT NULL
);
CREATE INDEX IF NOT EXISTS sessions_user ON sessions (user_id);
CREATE TABLE IF NOT EXISTS audit_log (
id INTEGER PRIMARY KEY AUTOINCREMENT,
at TEXT NOT NULL,
actor_id INTEGER,
actor_email TEXT NOT NULL,
action TEXT NOT NULL,
target TEXT NOT NULL DEFAULT '',
detail TEXT NOT NULL DEFAULT ''
);