fix(km): add phase25 knowledge enum labels
Some checks failed
CD Pipeline / tests (push) Successful in 2m14s
Code Review / ai-code-review (push) Successful in 26s
run-migration / migrate (push) Failing after 24s
CD Pipeline / build-and-deploy (push) Has been cancelled
CD Pipeline / post-deploy-checks (push) Has been cancelled
Some checks failed
CD Pipeline / tests (push) Successful in 2m14s
Code Review / ai-code-review (push) Successful in 26s
run-migration / migrate (push) Failing after 24s
CD Pipeline / build-and-deploy (push) Has been cancelled
CD Pipeline / post-deploy-checks (push) Has been cancelled
This commit is contained in:
6
apps/api/migrations/phase25_knowledge_enum_names.sql
Normal file
6
apps/api/migrations/phase25_knowledge_enum_names.sql
Normal file
@@ -0,0 +1,6 @@
|
||||
-- Phase 25 Knowledge Auto-Harvesting enum compatibility
|
||||
-- SQLAlchemy stores Enum names (AUTO_RUNBOOK / ANTI_PATTERN) for EntryType.
|
||||
-- Older production DBs only had lowercase labels from the first migration.
|
||||
|
||||
ALTER TYPE entrytype ADD VALUE IF NOT EXISTS 'AUTO_RUNBOOK';
|
||||
ALTER TYPE entrytype ADD VALUE IF NOT EXISTS 'ANTI_PATTERN';
|
||||
@@ -26,7 +26,7 @@ DO $$ BEGIN
|
||||
CREATE TYPE entrystatus AS ENUM ('DRAFT','REVIEW','APPROVED','ARCHIVED','published');
|
||||
END IF;
|
||||
IF NOT EXISTS (SELECT 1 FROM pg_type WHERE typname = 'entrytype') THEN
|
||||
CREATE TYPE entrytype AS ENUM ('INCIDENT_CASE','RUNBOOK','BEST_PRACTICE','POSTMORTEM','auto_runbook','anti_pattern');
|
||||
CREATE TYPE entrytype AS ENUM ('INCIDENT_CASE','RUNBOOK','BEST_PRACTICE','POSTMORTEM','auto_runbook','anti_pattern','AUTO_RUNBOOK','ANTI_PATTERN');
|
||||
END IF;
|
||||
END $$;
|
||||
|
||||
|
||||
@@ -15,6 +15,7 @@ Live e2e 用 `HostBackupFailed` 打 Alertmanager 後發現 aged backup 告警會
|
||||
- `AutoRepairService` 追加 host/backup Playbook guard:主機/備份 incident 若匹配到 K8s rollout 類 Playbook,阻擋為 `HOST_BACKUP_K8S_PLAYBOOK`,改走緊急介入。
|
||||
- `AutoRepairService` post-verification rollback guard:host/backup 或非 K8s Playbook 驗證失敗時,不再合成 `kubectl rollout restart deployment/{target}`,改走 emergency escalation,且不自動 resolve incident。
|
||||
- `EmergencyEscalationService` 沿用既有 `APPROVAL_ESCALATED` DB enum 寫 AOL,避免緊急通道因新 enum 未 migration 而留痕失敗。
|
||||
- 補 `phase25_knowledge_enum_names.sql`,讓 `AUTO_RUNBOOK` / `ANTI_PATTERN` enum name 可寫入 PG,修復 auto runbook KM 沉澱失敗。
|
||||
- `NodeExporterDown` Prometheus rule `auto_repair` 改為 `true`,與 YAML rule catalog 的 exporter restart 策略一致。
|
||||
- 補 `backup_failure` NO_ACTION / SSH_DIAGNOSE 單元測試。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user