handle errors better

This commit is contained in:
Joe Fleming
2026-03-08 13:41:35 -06:00
parent 1af934cc9e
commit d04af8d6dc
3 changed files with 31 additions and 12 deletions

View File

@@ -74,7 +74,8 @@ class Database:
def load_reference_data(self):
"""Load projects and workspaces into memory for fast lookups."""
assert self.conn is not None
if self.conn is None:
raise RuntimeError("Database is not connected. Call connect() first.")
cursor = self.conn.cursor()
# Load projects
@@ -125,7 +126,8 @@ class Database:
Returns:
List of Session objects with computed counts
"""
assert self.conn is not None, "Database not connected"
if self.conn is None:
raise RuntimeError("Database is not connected. Call connect() first.")
cursor = self.conn.cursor()
query = """
@@ -205,7 +207,8 @@ class Database:
def get_session_counts_by_project(self) -> dict:
"""Return a dict of project_id -> active session count."""
assert self.conn is not None
if self.conn is None:
raise RuntimeError("Database is not connected. Call connect() first.")
cursor = self.conn.cursor()
cursor.execute(
"SELECT project_id, COUNT(*) FROM session WHERE time_archived IS NULL GROUP BY project_id"
@@ -228,7 +231,8 @@ class Database:
Returns:
(success, list of SQL statements executed)
"""
assert self.conn is not None, "Database not connected"
if self.conn is None:
raise RuntimeError("Database is not connected. Call connect() first.")
cursor = self.conn.cursor()
# Verify target project exists
@@ -265,7 +269,8 @@ class Database:
Returns:
(success, list of SQL statements, list of new session IDs)
"""
assert self.conn is not None, "Database not connected"
if self.conn is None:
raise RuntimeError("Database is not connected. Call connect() first.")
import uuid
cursor = self.conn.cursor()
@@ -355,7 +360,8 @@ class Database:
Returns:
(success, error_message)
"""
assert self.conn is not None, "Database not connected"
if self.conn is None:
raise RuntimeError("Database is not connected. Call connect() first.")
cursor = self.conn.cursor()
try: