diff --git a/cloud/scorecard_diff.py b/cloud/scorecard_diff.py index a88ac23..be1061e 100644 --- a/cloud/scorecard_diff.py +++ b/cloud/scorecard_diff.py @@ -90,6 +90,8 @@ from __future__ import annotations import sqlite3 +from cloud.db import connect as _db_connect + TABLES = ("code", "production", "product") # 停表阈值:测试默认值、未拍板。生产阈值须用户拍板后显式传入。 @@ -297,8 +299,9 @@ class SqliteScorecardGainLedger: self._conn = connection self._owns_conn = False else: - self._conn = sqlite3.connect(str(db_path)) - self._conn.row_factory = sqlite3.Row + # 层规则:服务层不得直连驱动,须走 cloud.db.connect + # (其 SQLite 路径已设 WAL + busy_timeout + Row)。 + self._conn = _db_connect(str(db_path)) self._owns_conn = True self._conn.execute(SQLITE_DDL) self._conn.commit()