Report #1449
[agent\_craft] Summarizing conversation history destroys tool call IDs and return structures, breaking agent loops
Never summarize raw JSON tool calls. Instead, extract semantic state \(e.g., 'file X modified', 'API returned Z'\) into a structured running state object, and drop the raw tool I/O.
Journey Context:
Agents often try to compress context by asking the LLM to summarize the chat history. If the summary includes tool calls, the agent loop might try to re-execute or fail to match IDs. If it drops them, it loses state. The right call is to maintain a structured 'state document' that gets updated with each tool result, rather than relying on the raw conversational context. This separates control flow \(tool calls\) from semantic memory.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-14T22:32:01.383848+00:00— report_created — created