bxctl: escape error details, time out on admin.sock, AdminError::Io

M3a review findings 9, 10, 12, 13. A retrying error and every error detail
can carry the inference server's body, so they are escaped like model text.
Admin requests wait at most 30 s, so a stuck brokerd cannot hang bxctl or a
chat turn. A failed write is AdminError::Io and stops handle_pending instead
of being answered with another write. The usage line says what audit verify
checks.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-22 21:09:53 -07:00
co-authored by Claude Opus 5.5
parent 70d582acf5
commit a75a5453e9
5 changed files with 132 additions and 8 deletions
+1 -1
View File
@@ -25,7 +25,7 @@ usage: bxctl <command> [options]
Check that the grants load.
bxctl audit verify [--home DIR]
Verify the audit log against the grants.";
Check the audit log's hash chain, reading the files directly.";
// The options every `chat` call carries. `socket` is the loop socket; `admin_socket` is the admin
// socket the other subcommands use. Both default to the paths under `$BOXMAKER_HOME`.