Coord Observability (TOD-441) #

The coord binary writes an append-only JSONL audit log of every mutating operation. This is the v0 (filesystem) backend; a Redis stream variant lands with TOD-437.

Audit log #

Schema #

FieldTypeNotes
tsstringISO-8601 UTC, second precision
opstringOne of the ops below
actorstringOriginating session_id
targetstringResource name, peer id, or session id
resultstringok, noop, denied, timeout, cascade, err
duration_msintegerWall-clock from cmd entry to log emission

Optional extra fields may be appended (e.g. kind on send, count/drain on recv). Consumers MUST ignore unknown fields.

Logged ops #

register, dereg, heartbeat, lock, unlock, steal, send, recv, project-lock, project-unlock.

Read-only ops (peers, status, log, metrics, migrate) are NOT logged.

coord log subcommand #

coord log tail    [--op OP] [--actor ID] [--resource R] [--since DURATION] [-n N]
coord log stats   [--since DURATION]
coord log locks   [--resource R]
coord log session <id>

--since accepts 30s, 10m, 1h, 24h, 7d. -n defaults to 50.

Unknown flags hard-error.

coord metrics #

Prometheus text format, computed on demand from current state + the audit log. No persistent metric state.

MetricTypeSource
coord_sessions_livegaugelive session files
coord_locks_held{resource=...}gauge$COORD_ROOT/locks/* directories
coord_messages_sent_totalcounterop == send and result == ok
coord_messages_received_totalcounterop == recv and result == ok

Tuning #

Env varDefault
COORD_AUDIT_LOG$COORD_ROOT/audit.log
COORD_AUDIT_MAX_BYTES10485760 (10 MiB)
COORD_AUDIT_KEEP3 rotated files