feat(ops): expand command suite with watchdog.alerts, relay.health, and swarm.results

This commit is contained in:
operator
2026-10-05 05:39:36 +00:00
parent c2b53c69f9
commit 96cb80288f
2 changed files with 28 additions and 2 deletions
+10 -2
View File
@@ -343,8 +343,13 @@ case "$cmd" in
list) list)
call_exec "swarm.list" "{}" call_exec "swarm.list" "{}"
;; ;;
results)
sid="${1:?usage: box swarm results <swarm_id>}"
args=$(python3 -c "import json, sys; print(json.dumps({'swarm_id': sys.argv[1]}))" "$sid")
call_exec "swarm.results" "$args"
;;
*) *)
echo "Usage: box swarm spawn|status|list ..." echo "Usage: box swarm spawn|status|results|list ..."
;; ;;
esac esac
;; ;;
@@ -435,7 +440,10 @@ case "$cmd" in
call_exec "chrome.errors" "{}" call_exec "chrome.errors" "{}"
;; ;;
watchdog-alerts) watchdog-alerts)
call_exec "cdp.latency" "{}" call_exec "watchdog.alerts" "{}"
;;
relay-health)
call_exec "relay.health" "{}"
;; ;;
ping) ping)
call_exec "exec.ping" "{}" call_exec "exec.ping" "{}"
+18
View File
@@ -456,6 +456,14 @@ def _chrome_errors_build(a):
return [sys.executable, os.path.join(BIN_DIR, 'box-ctl.py'), 'chrome-errors'] return [sys.executable, os.path.join(BIN_DIR, 'box-ctl.py'), 'chrome-errors']
def _watchdog_alerts_build(a):
return [sys.executable, os.path.join(BIN_DIR, 'box-ctl.py'), 'watchdog-alerts']
def _relay_health_build(a):
return [sys.executable, os.path.join(BIN_DIR, 'box-ctl.py'), 'relay-health']
def _subagent_spawn_validate(raw): def _subagent_spawn_validate(raw):
if not isinstance(raw, dict): if not isinstance(raw, dict):
raise OpError('args must be an object') raise OpError('args must be an object')
@@ -888,6 +896,16 @@ OPS = {
'timeout': 30, 'side_effecting': False, 'timeout': 30, 'side_effecting': False,
'desc': 'Scan chrome log files for FATAL/crash/OOM errors since watermark (read-only)', 'desc': 'Scan chrome log files for FATAL/crash/OOM errors since watermark (read-only)',
}, },
'watchdog.alerts': {
'validate': _health_validate, 'build': _watchdog_alerts_build,
'timeout': 30, 'side_effecting': False,
'desc': 'Check for new browser relaunch watchdog alerts since watermark (read-only)',
},
'relay.health': {
'validate': _health_validate, 'build': _relay_health_build,
'timeout': 30, 'side_effecting': False,
'desc': 'Check systemd relay service status across all node ports (read-only)',
},
'subagent.spawn': { 'subagent.spawn': {
'validate': _subagent_spawn_validate, 'build': _subagent_spawn_build, 'validate': _subagent_spawn_validate, 'build': _subagent_spawn_build,
'timeout': 120, 'side_effecting': True, 'timeout': 120, 'side_effecting': True,