v13.9.2
thedotmack/claude-memv13.9.2Jul 1, 2026by thedotmack
AI Summary
Removed client-side context truncation from the provider layer to prevent silent history corruption and allow full conversation history to be sent to the provider.
Key Highlights
- Removed `OpenAICompatibleProvider.truncateHistory()` and hardcoded 20-message/100k-token limits.
- Fixed setups where real model context windows were smaller than hardcoded assumptions.
- Full conversation history is now sent to the provider which owns its own context window.
Breaking Changes
- Removed `OpenAICompatibleProvider.truncateHistory()` method.
- Removed `requireNonEmptyToTruncate` flag and related settings (`*_MAX_CONTEXT_MESSAGES`, `*_MAX_TOKENS`).
Full Release Notes
## Bug Fix
**Removed client-side context truncation from the provider layer.**
The `OpenAICompatibleProvider` applied a sliding-window truncation to conversation history — a hardcoded 20-message cap and a 100k-token "safety" limit layered on top of the model's own context window. In practice it fired on message count alone, dropping conversation messages at ~12k tokens (nowhere near the token limit) and silently corrupting history, mislabeled as "runaway cost" prevention. This broke setups whose real model context window bore no relation to those hardcoded assumptions.
The full conversation history is now sent to the provider, which owns its own context window.
### Removed
- `OpenAICompatibleProvider.truncateHistory()` and the `requireNonEmptyToTruncate` flag
- `truncateHistoryForOpenRouter` / `truncateHistoryForGemini` wrappers and their message/token constants
- `CLAUDE_MEM_{GEMINI,OPENROUTER}_MAX_CONTEXT_MESSAGES` / `_MAX_TOKENS` settings, defaults, and validation
- Related tests, docs, and installer references
Merged in #3096. Verified: `tsc` clean, 2248 tests passing, build-and-sync clean.