v2.3.0: adaptive Crof self-healing system
- Per-model success/failure tracking with dynamic item limits - Proactive compaction when above learned limit - Auto-retry on finish_reason=length with aggressive re-compaction - Tested: kimi-k2.6 (27 items) and mimo-v2.5-pro both completed - All previous fixes included: _ts crash, connection reset, timeout, orphaned fco
This commit is contained in:
15
CHANGELOG.md
15
CHANGELOG.md
@@ -1,5 +1,20 @@
|
||||
# Changelog
|
||||
|
||||
## v2.3.0 (2026-05-20)
|
||||
|
||||
- **Adaptive Crof self-healing system**
|
||||
- Tracks per-model success/failure history with item counts
|
||||
- Dynamically learns max item limit per model (starts at 30, adjusts down on failures)
|
||||
- Proactively compacts input when above learned limit before sending to upstream
|
||||
- Auto-retry on `finish_reason=length` with aggressive re-compaction and resend
|
||||
- Prevents `stream disconnected` and `incomplete` errors on long conversations
|
||||
- All tracking logged to stderr: `[crof-adaptive] model=X items=N OK/FAIL -> limit=N`
|
||||
- Fixed `NameError: _ts` crash in debug logging
|
||||
- Fixed `ConnectionResetError` crash on client disconnect during streaming
|
||||
- Added 180s upstream timeout to prevent hanging connections
|
||||
- Compaction now preserves function_call/function_call_output pairs (no orphaned tool outputs)
|
||||
- Fixed reasoning control: `reasoning_effort=none` always sends both params
|
||||
|
||||
## v2.2.1 (2026-05-20)
|
||||
|
||||
- **Fixed compaction orphaning function_call_output items** — root cause of Crof `incomplete` responses
|
||||
|
||||
Reference in New Issue
Block a user