fix: store username on moderation_actions for retention safety

Add denormalized  column to moderation_actions so the
dashboard TARGET field survives message table purges. Backfills all
existing 217 rows. Changes: schema + autoDeleteManager + backend
repository query + migration 0017.
This commit is contained in:
asepharyana
2026-08-27 12:15:06 +07:00
parent 17aad2cc39
commit cccfd89266
8 changed files with 24 additions and 2 deletions
@@ -642,6 +642,7 @@ export const pgModerationActionsTable = pgTable(
score: pgReal("score"), // 0..1 raw model score
evidence: pgText("evidence"), // JSON array of short quoted snippets
policy_version: pgText("policy_version"), // rules.ts policy version string
username: pgText("username"), // denormalized from messages table for retention safety
},
(table) => ({
messageIdIdx: pgIndex("idx_moderation_actions_message_id").on(