fix(awooop): surface legacy HITL backlog
This commit is contained in:
31
apps/api/src/services/dashboard_metrics_service.py
Normal file
31
apps/api/src/services/dashboard_metrics_service.py
Normal file
@@ -0,0 +1,31 @@
|
||||
"""
|
||||
Dashboard Metrics Service
|
||||
=========================
|
||||
Small DB-backed counters used by the war-room dashboard.
|
||||
"""
|
||||
|
||||
from sqlalchemy import text
|
||||
|
||||
from src.core.logging import get_logger
|
||||
from src.db.base import get_db_context
|
||||
|
||||
logger = get_logger("awoooi.dashboard_metrics")
|
||||
|
||||
|
||||
async def fetch_pending_approval_count() -> int:
|
||||
"""Read the live HITL backlog from approval_records."""
|
||||
try:
|
||||
async with get_db_context() as db:
|
||||
result = await db.execute(
|
||||
text(
|
||||
"""
|
||||
SELECT count(*)
|
||||
FROM approval_records
|
||||
WHERE upper(status::text) = 'PENDING'
|
||||
"""
|
||||
)
|
||||
)
|
||||
return int(result.scalar_one() or 0)
|
||||
except Exception as exc:
|
||||
logger.warning("dashboard_pending_approval_count_failed", error=str(exc))
|
||||
return 0
|
||||
Reference in New Issue
Block a user