github →

New request

#3315: Streaming should show compression-exhausted tool-tail runs as errors

We'll provision a sandbox, run an agent against the issue, and open a draft PR. You can pull the branch and iterate from there.

Issue
bugsprint-candidatestreaming

When Hermes Agent exhausts context compression in a long tool-heavy turn, WebUI can receive streamed interim text and a persisted transcript that ends in a tool result or assistant tool-call turn without a final assistant answer. That must not be finalized as a completed response.

Expected behavior:

  • compression_exhausted, failed, or partial agent results surface as errors
  • persisted transcripts ending in tool or assistant(tool_calls) without a final assistant answer are treated as terminal failures
  • internal [CONTEXT COMPACTION — REFERENCE ONLY] messages are not final answers and are not rendered as settled transcript cards
  • running compression may show transient status, but raw reference text should not remain as user-visible completed content

This is the WebUI companion for the Hermes Agent auto-compression fix.

Assessmentadvisory
bug●● medium90% confidence

Fixes misclassification of compression-exhausted tool-tail streaming turns as finalized responses by updating terminal-error handling in streaming and transcript persistence.

Likely files
  • api/streaming.py
  • api/routes.py
  • static/index.html
  • static/app.js
  • static/sessions.js
Create the request

This opens a fresh agent run and a draft PR for issue #3315.

Cancel