From a1f7d1f4957f779633a21807f2dc56f2fa0f8712 Mon Sep 17 00:00:00 2001 From: OG T Date: Wed, 1 Apr 2026 21:36:15 +0800 Subject: [PATCH] =?UTF-8?q?fix(db):=20=E5=9B=BA=E5=8C=96=20risklevel=20ADD?= =?UTF-8?q?=20VALUE=20'high'=20=E7=82=BA=E6=AD=A3=E5=BC=8F=20migration?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Phase 23 緊急修復已在 prod/dev 手動執行,此檔作為正式記錄 使用 DO 塊防止重複執行錯誤 Co-Authored-By: Claude Sonnet 4.6 --- .../migrations/phase23_risklevel_add_high.sql | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 apps/api/migrations/phase23_risklevel_add_high.sql diff --git a/apps/api/migrations/phase23_risklevel_add_high.sql b/apps/api/migrations/phase23_risklevel_add_high.sql new file mode 100644 index 000000000..44fe16da9 --- /dev/null +++ b/apps/api/migrations/phase23_risklevel_add_high.sql @@ -0,0 +1,23 @@ +-- ============================================================================= +-- Phase 23: risklevel ENUM 新增 HIGH 值 +-- ============================================================================= +-- 執行日期: 2026-04-01 +-- 執行者: ogt +-- 背景: Sentry Webhook 送入 risk_level="HIGH" 時 DB 拋 InvalidTextRepresentation +-- 已在 prod/dev 緊急執行,此檔固化為正式 migration record +-- ============================================================================= + +-- PostgreSQL ENUM 不支援 IF NOT EXISTS,使用 DO 塊避免重複執行錯誤 +DO $$ +BEGIN + IF NOT EXISTS ( + SELECT 1 FROM pg_enum + WHERE enumtypid = 'risklevel'::regtype + AND enumlabel = 'high' + ) THEN + ALTER TYPE risklevel ADD VALUE 'high'; + END IF; +END +$$; + +COMMENT ON TYPE risklevel IS 'Risk level enum: low | medium | high | critical. HIGH added Phase 23 (2026-04-01)';