feat(schema): rename canonical_pair_id to federated_id, add group DM columns
Renames dm_channels.canonical_pair_id → federated_id and adds owner_home_user_id, owner_home_instance, deleted_at columns to support federated group DMs. Migration handles upgrade from existing installs (full table rebuild to rename), partial states (ALTER TABLE), and fresh installs (correct DDL from the start). Backfills federated_id for existing 1-on-1 DM channels and owner federation identity for group DMs.
This commit is contained in:
@@ -92,8 +92,13 @@ function createTables(db: Database.Database): void {
|
||||
CREATE TABLE IF NOT EXISTS dm_channels (
|
||||
id TEXT PRIMARY KEY,
|
||||
owner_id TEXT,
|
||||
federated_id TEXT,
|
||||
owner_home_user_id TEXT,
|
||||
owner_home_instance TEXT,
|
||||
deleted_at INTEGER,
|
||||
created_at INTEGER NOT NULL
|
||||
);
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS idx_dm_federated ON dm_channels(federated_id) WHERE federated_id IS NOT NULL;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS dm_members (
|
||||
dm_channel_id TEXT NOT NULL REFERENCES dm_channels(id) ON DELETE CASCADE,
|
||||
|
||||
Reference in New Issue
Block a user