These are bugs (or missing features) I've observed while working with multi checks.
-
I have not fiddled with
max turnsyet. -
No loading of skills.
-
No loading of
RULES.mdfiles from the.claudedirectory. -
Logs no longer report the id of the check that failed (or the number of attempted retries)
-
assemble_instructionsis hard-coded:src/checks/executor/mod.rs:98(definition), called fromsrc/checks/executor/cersei.rs:110 -
I haven't fiddled with the system prompt yet.
-
Not sure if prompt caching is enabled at all, but I suspect it is.
-
Running 16 agents seems to nearly freeze the computer. Use an OTel profile to determine if this is true.
-
Ctrl-C(shutdown signals) needs to be handled gracefully and cross-platform. Themulti checkpresenter installs a rawlibc::signal(SIGINT, …)handler (install_terminal_guards, src/checks/presenter/inline.rs:224) that is Unix-only (won't build/run on Windows) and hard-_exit(130)s: it restores the cursor but skips graceful teardown, so in-flight agent sessions, the MCP result server, and spawned Cersei subprocesses are killed without cleanup and no partial results/traces get flushed. Contrastmulti run, which already does this correctly and cross-platform viatokio_graceful_shutdown::Toplevel::catch_signals()
handle_shutdown_requests()(src/cmd/run/canary_mode.rs:63).checkshould adopt the same graceful-shutdown path (or an equivalenttokio::signal::ctrl_c+ coordinated cancellation covering SIGINT/SIGTERM and Windows Ctrl-C/Ctrl-Break) while still guaranteeing the terminal is restored on the way out.
- CERSEI:
append_system_prompt()function is dead unless routed through the separate build_system_prompt() composer.
-
No GitHub Action available.
-
No use of Cersei workflows to chain multiple prompts together.
-
No support for Fireworks AI.
-
Remove the
Claude -pexecutor. -
No trace capture. We need a way to record all session traces so that we can analyze why they failed.
-
Output is now hanging. I suspect this is recent (within the last few commits) and it started happening after implement the changes to the
Presenteractor to fix writing text off-screen without wrapping. -
Temperature not configured.
-
No loading of CLAUDE.md files
-
Concurrency still not respected.
-
Full error text got cut off at the end of the terminal screen instead of wrapping. Turned out to live in the presenter (
src/checks/presenter/inline.rs), not theReporter— the inline TUI is the sole terminal writer for the whole run (seeowns_recordinsrc/checks/mod.rs), soReporter::report()never even runs in a TTY session. The presenter renders into a fixed-sizeratatui::Bufferviainsert_before, which clips instead of wrapping; fixed by word-wrapping every flushed line to the terminal width before building it. -
A
tracing::info!/debug!log line fired mid-run (e.g. the "retrying check whose agent did not report" line) wrote raw bytes straight to stdout, corrupting the inline TUI's cursor-managed viewport. Fixed by giving the presenter full ownership of log output:PresenterActornow registers itself astracing's active sink (src/terminal/logging.rs::route_logs) for the run's duration and folds each line in as aUiEvent::Log. The inline TUI flushes each line to permanent scrollback (same mechanism as a completed requirement) and also keeps the last few in a small live pane, separate from the tree.