-- Users of this organization's instance. One database == one organization, so no -- org_id. Email is stored already-normalized (lowercase) by the application, so a -- plain UNIQUE suffices. Passwords are stored only as argon2id PHC strings. CREATE TABLE app_user ( id UUID PRIMARY KEY, email TEXT NOT NULL UNIQUE CHECK (email <> ''), password_hash TEXT NOT NULL CHECK (password_hash <> ''), role TEXT NOT NULL CHECK (role IN ('admin', 'editor')), created_at TIMESTAMPTZ NOT NULL DEFAULT now(), updated_at TIMESTAMPTZ NOT NULL DEFAULT now() );