Enhancement
The compaction system generates an AI summary to reduce context, but it doesn't prune old tool outputs first. If context is already near the limit, the summarization LLM call itself may overflow.
Proposal
Add SessionCompaction.prune() before both compaction triggers:
- Proactive overflow check (before LLM call)
- Reactive compact result (after processor returns 'compact')
Pruning strips old tool read/grep/list outputs first, maximizing context reduction before the summarization LLM call.