Bug Description
When a conversation triggers context compression (summarisation), the model completely loses the current task context. The specific symptoms are:
- User is discussing a task or topic
- Conversation hits the compression trigger threshold; Hermes calls MiniMax for summarisation
- If the summarisation call encounters HTTP 529:
- The model receives a static fallback text instead of the actual preserved message tail
- This breaks the continuity of context after compression
- User asks the model to continue the interrupted task
- Model starts responding to content from several rounds ago, not the interrupted task
Contrast with OpenClaw: OpenClaw using the same MiniMax API does not have this problem with the same 529 scenario.
Root Cause (preliminary)
Two-part failure:
- Summarisation LLM call fails due to MiniMax HTTP 529 (cluster overload)
- Fallback mechanism injects static placeholder text ("context lost, continue from recent messages") instead of actual preserved message tail — model cannot recover the interrupted task from this
The fallback appears to use a static "context unavailable" message rather than concatenating the genuinely preserved message tail, which is likely how OpenClaw handles it.
Additional Observations
- 529 errors appear to affect summarisation calls specifically (primary model calls may succeed while summarisation fails)
- OpenClaw does NOT have this problem with the same MiniMax API — suggesting the issue is in Hermes fallback handling, not MiniMax
- After compression failure, the model next response is consistently off-topic (responding to something from several rounds ago)
- User must re-explain the task from scratch to recover
Expected vs Actual Behavior
Expected: After context compression, model should continue naturally from the preserved message tail with full awareness of the in-progress task.
Actual: Model loses the thread entirely and responds to stale topics.
Proposed Investigation
- Compare context compression fallback logic between OpenClaw and Hermes (how does OpenClaw preserve context on 529?)
- Verify whether fallback currently preserves actual message tail or uses static placeholder
- Consider changing fallback to concatenate actual preserved messages rather than static text
- Investigate why summarisation calls seem more susceptible to 529 than primary model calls
Environment
- Hermes agent with MiniMax-M2.7 as primary model
- Authentication: API Key (direct)
- Context compression enabled
- Same MiniMax API key used by OpenClaw (OAuth auth) without this issue
Bug Description
When a conversation triggers context compression (summarisation), the model completely loses the current task context. The specific symptoms are:
Contrast with OpenClaw: OpenClaw using the same MiniMax API does not have this problem with the same 529 scenario.
Root Cause (preliminary)
Two-part failure:
The fallback appears to use a static "context unavailable" message rather than concatenating the genuinely preserved message tail, which is likely how OpenClaw handles it.
Additional Observations
Expected vs Actual Behavior
Expected: After context compression, model should continue naturally from the preserved message tail with full awareness of the in-progress task.
Actual: Model loses the thread entirely and responds to stale topics.
Proposed Investigation
Environment