hyperhive/hive-c0re
müde 40938d8b54 dashboard: surface silent unwrap_or_default in api_state
every snapshot source backing /api/state used .unwrap_or_default()
— sqlite errors, broker errors, nixos-container list failures,
operator_questions decode crashes all degraded to empty lists
without a log line. the 'pending question doesn't render'
bug we've been chasing was likely a row-decode panic in
OperatorQuestions::pending() being swallowed this way.

new log_default(what, result) replaces each call site: same
default value on Err but emits target=api_state warn with the
source name + dbg error first. five sources covered:
nixos-container list, approvals.pending,
approvals.recent_resolved, broker.recent_for(operator),
questions.pending. next time the question goes missing the
journal will say which source failed and how.

todo updated — pending-question entry now points at the new
log instead of three suspect paths.
2026-05-16 03:49:49 +02:00
..
assets dashboard: 3-column layout — swarm / 0per4t0r 1n / m3ss4g3s 2026-05-16 03:47:16 +02:00
src dashboard: surface silent unwrap_or_default in api_state 2026-05-16 03:49:49 +02:00
Cargo.toml dashboard: diff against applied/proposal/<id>, prefer fetched_sha 2026-05-15 23:18:17 +02:00