betting_combat.store.dashboards
The tables Grafana reads, in monitoring.betting_combat (Grafana’s Postgres
datasource is the monitoring database). Every row is a latest-state snapshot,
upserted on its key; the column lists mirror sql/betting_combat_monitoring.sql.
Classes
DashboardStore
data_health
data_health(rows: Sequence[dict[str, Any]]) -> Nonedecision_log
decision_log(rows: Sequence[dict[str, Any]]) -> Nonefight_night
fight_night(rows: Sequence[dict[str, Any]]) -> Nonemodel_registry
model_registry(rows: Sequence[dict[str, Any]]) -> Nonesession_status
session_status(rows: Sequence[dict[str, Any]]) -> Nonetrade_ledger
trade_ledger(rows: Sequence[dict[str, Any]]) -> Nonewrite
write(table: str, rows: Sequence[dict[str, Any]]) -> NoneUpsert latest state. A value the writer does not know (None) never erases one a previous writer knew (a relaunched run re-writes orders it restored).
Functions
shape
shape(table: str, rows: Sequence[dict[str, Any]]) -> list[dict[str, Any]]Exactly the table’s columns, floats as floats, JSON as text.