Skip to content

Fix tool result counting on session restart - #113

Merged
Tarquinen merged 1 commit into
masterfrom
fix/tool-count-on-restart
Dec 11, 2025
Merged

Fix tool result counting on session restart#113
Tarquinen merged 1 commit into
masterfrom
fix/tool-count-on-restart

Conversation

@Tarquinen

Copy link
Copy Markdown
Collaborator

Summary

  • Add clearToolTracker to fully reset tracker state on session restart
  • Skip already-pruned tools when syncing tool cache to avoid re-counting
  • Remove unused PruneReason import

@Tarquinen
Tarquinen merged commit cadc113 into master Dec 11, 2025
1 check passed
@Tarquinen
Tarquinen deleted the fix/tool-count-on-restart branch December 11, 2025 16:24
Ther-zh added a commit to Ther-zh/opencode-dynamic-context-pruning that referenced this pull request Aug 31, 2026
Real-session replay (fork-1.json) showed prompt guidance alone is not
enough: after one good large merge (Opencode-DCP#113: -88.8K/+15.3K), the model fell
back to folding a single poll message (Opencode-DCP#114: -121/+453) and writing a
merge summary 2.6x larger than what it replaced (Opencode-DCP#115: -6.7K/+17.5K).
Both are net-positive context growth - the exact anti-pattern.

Add a hard code-level gate: when compress.enforceSummaryShrink is on
(default true), the range compress tool rejects any compression whose
summary tokens are not strictly smaller than the tokens it replaces
(raw messages + consumed child block summaries). The model must rewrite
a much more condensed summary or merge existing blocks instead.

Adds config key, range-utils helper, tool integration, and unit test.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant