fix: код-ревью #5 #6 #8 #9 #10 — 5 исправлений (v1.2.43)

#5 api_history: try/finally для conn/cur (как везде)
#6 stand_name: точное сравнение URL вместо substring
#8 get_real_client: удалён мёртвый алиас
#9 UNIQUE индекс idx_runs_op_uid для предотвращения гонок
#10 flock flush: f.flush() перед LOCK_UN в ротации лога
#7 (отступ scenario.py) пропущен — только косметика, риск сломать else:
This commit is contained in:
2026-08-04 08:02:08 +04:00
parent 126500a30b
commit 764592ba60
6 changed files with 21 additions and 28 deletions
+4
View File
@@ -84,6 +84,10 @@ ALTER TABLE runs ADD COLUMN IF NOT EXISTS app_version VARCHAR(16);
ALTER TABLE runs ADD COLUMN IF NOT EXISTS scenario_run_id INTEGER;
ALTER TABLE runs ADD COLUMN IF NOT EXISTS step_number INTEGER;
ALTER TABLE runs ADD COLUMN IF NOT EXISTS instance_meta JSONB;
-- Уникальный индекс на op_uid для предотвращения гонок в save_run
CREATE UNIQUE INDEX IF NOT EXISTS idx_runs_op_uid
ON runs (op_uid) WHERE op_uid IS NOT NULL;
"""
# ── DDL для scenario_runs (запуски сценариев) ──