From 08d55411aa5cd1221371397436277d9575e63bd2 Mon Sep 17 00:00:00 2001 From: dekun Date: Wed, 1 Jul 2026 08:31:17 +0800 Subject: [PATCH] Simplify account_risk_state DDL for PostgreSQL compatibility. Co-authored-by: Cursor --- risk/account_risk_lib.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/risk/account_risk_lib.py b/risk/account_risk_lib.py index f60d094..10254d5 100644 --- a/risk/account_risk_lib.py +++ b/risk/account_risk_lib.py @@ -101,7 +101,7 @@ _SCHEMA_READY = False ACCOUNT_RISK_STATE_SQL = """ CREATE TABLE IF NOT EXISTS account_risk_state ( - id INTEGER NOT NULL PRIMARY KEY CHECK (id = 1), + id INTEGER PRIMARY KEY, trading_day TEXT, manual_close_count INTEGER DEFAULT 0, cooloff_until_ms INTEGER, @@ -112,12 +112,6 @@ CREATE TABLE IF NOT EXISTS account_risk_state ( ) """ -SEED_ACCOUNT_RISK_SQL = """ -INSERT INTO account_risk_state (id, trading_day, manual_close_count, daily_frozen) -VALUES (1, '', 0, 0) -ON CONFLICT(id) DO NOTHING -""" - def _account_risk_table_exists(conn) -> bool: try: @@ -152,7 +146,12 @@ def ensure_account_risk_schema(conn) -> None: return _SCHEMA_READY = False conn.execute(ACCOUNT_RISK_STATE_SQL) - conn.execute(SEED_ACCOUNT_RISK_SQL) + conn.commit() + if not conn.execute("SELECT 1 FROM account_risk_state WHERE id=1").fetchone(): + conn.execute( + "INSERT INTO account_risk_state (id, trading_day, manual_close_count, daily_frozen) " + "VALUES (1, '', 0, 0)" + ) conn.commit() _SCHEMA_READY = True