Bot DM retry and output stream classification fixes
Cluster 111721. Data as of
Nothing open on GitHub. Fix merged in #113183 on 17 Sep 2026. Check it covers your case.
The short answer
- Known?
- Yes. 4 related items grouped here, 1 issue already closed.
- Fix event
- A fix was merged to main in PR #113183. Check it covers your case. No release data is tracked.
- Tracker
- The maintainers' tracker marks this
resolved, deciding PR #113183. That is separate from the fix event. - Still open
- Nothing open on GitHub.
These items address bugs in bot-mode DM delivery retry logic, specifically that retries never fired due to incorrect stream classification (reading stderr when the CLI writes errors to stdout), and that fixing the classifier risked double-delivery. Related work also covers dropped stdout in failed cron bot chat delivery logging.
Open issues0
Open PRs0
Fixes on record
-
#113183 fix(bot-mode): a bot DM's transient-failure retry fires and delivers exactly once (#111721, salvage #105529)
files:
cli.py,hermes_cli/quiet_single_query.py,tests/hermes_cli/test_quiet_single_query.py,tests/tools/test_bot_retry_policy.py,tools/bot_failure_reasons.py,tools/bot_mode_dm.py,tools/bot_relay.py,tui_gateway/methods_bot_relay.py,website/docs/user-guide/bot-mode.md -
#113435 fix(cron): a failed Bot Chat delivery records the exit code and both streams (stdout no longer dropped when stderr is present) (#104056, salvage #104068)
files:
cron/scheduler_delivery.py,tests/cron/test_cron_bot_chat_delivery.py
1 PR closed without merging
From the close comments: done elsewhere 1
-
#105529 fix(bot-mode): neither DM delivery retry ever fired — classify from the stream the CLI actually writes · done elsewhere →
3719e04,#113435
Closed issues · 1
- Closed#111721[Bug]: neither bot-to-bot DM delivery retry ever fires — the classifier reads `(proc.stderr or proc.stdout)` but the CLI writes the provider error to stdout; fixing that alone double-delivers the DM
How this cluster was grouped
-
Link evidence (
structural links throughout): every member is connected by structural evidence: shared changed files, or a closing/superseded reference. -
Pairwise link density
0.50: the share of item pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36.1.00means every pair is linked.
Pick up a Lab task
Check whether a fix covers the open issues here, with your own agent. Bring back evidence for maintainers.
Open the Lab