From 1beba3402b2eb9f6f3d94d4260bef44d180b219b Mon Sep 17 00:00:00 2001 From: Hyungi Ahn Date: Fri, 10 Apr 2026 08:52:26 +0900 Subject: [PATCH] fix(migration): split 102 ask_events into single-statement files asyncpg cannot insert multiple commands into a prepared statement. 102 = CREATE TABLE only, 103 = CREATE INDEX only. Co-Authored-By: Claude Opus 4.6 (1M context) --- migrations/102_ask_events.sql | 16 ++++------------ migrations/103_ask_events_indexes.sql | 1 + 2 files changed, 5 insertions(+), 12 deletions(-) create mode 100644 migrations/103_ask_events_indexes.sql diff --git a/migrations/102_ask_events.sql b/migrations/102_ask_events.sql index 4b26c65..4c2e240 100644 --- a/migrations/102_ask_events.sql +++ b/migrations/102_ask_events.sql @@ -1,26 +1,18 @@ --- Phase 3.5a: /ask 호출 관측 테이블 --- refusal rate 측정, 지표 3 분리 (full/partial/insufficient), defense layer 디버깅 - CREATE TABLE IF NOT EXISTS ask_events ( id BIGSERIAL PRIMARY KEY, query TEXT NOT NULL, user_id BIGINT REFERENCES users(id), - completeness TEXT, -- full / partial / insufficient + completeness TEXT, synthesis_status TEXT, confidence TEXT, refused BOOLEAN DEFAULT false, - classifier_verdict TEXT, -- sufficient / insufficient / null (skipped) + classifier_verdict TEXT, max_rerank_score REAL, aggregate_score REAL, hallucination_flags JSONB DEFAULT '[]', evidence_count INT, citation_count INT, - defense_layers JSONB, -- per-layer flag snapshot (score_gate, classifier, grounding) + defense_layers JSONB, total_ms INT, created_at TIMESTAMPTZ DEFAULT now() -); - -CREATE INDEX IF NOT EXISTS idx_ask_events_created ON ask_events(created_at); -CREATE INDEX IF NOT EXISTS idx_ask_events_completeness ON ask_events(completeness); - -INSERT INTO schema_migrations (version) VALUES (102); +) diff --git a/migrations/103_ask_events_indexes.sql b/migrations/103_ask_events_indexes.sql new file mode 100644 index 0000000..9555855 --- /dev/null +++ b/migrations/103_ask_events_indexes.sql @@ -0,0 +1 @@ +CREATE INDEX IF NOT EXISTS idx_ask_events_created ON ask_events(created_at)