v2.2.1: fix compaction orphaning tool outputs causing Crof incomplete

- Fix compaction cutting between function_call and function_call_output pairs
- Orphaned tool results confused Crof models causing finish_reason=length
- reasoning_effort=none now always sends enable_thinking=false too
- Added Crof upstream debug logging
This commit is contained in:
Roman
2026-05-20 13:14:40 +04:00
Unverified
parent 9bcb6998e0
commit 6c67642522
5 changed files with 40 additions and 5 deletions

View File

@@ -1,5 +1,15 @@
# Changelog
## v2.2.1 (2026-05-20)
- **Fixed compaction orphaning function_call_output items** — root cause of Crof `incomplete` responses
- Compaction cut between function_call and its function_call_output, creating dangling tool results
- Crof model received orphaned `tool` messages with empty `tool_call_id`, causing confusion and token exhaustion
- Compaction now expands tail boundary to include matching function_call/function_call_output pairs
- **Fixed reasoning control**: `reasoning_effort=none` now always sends both `enable_thinking=false` AND `reasoning_effort=none`
- Crof API testing confirmed `reasoning_effort=none` is what actually suppresses reasoning, not `enable_thinking=false`
- Added upstream debug logging to `~/.cache/codex-proxy/crof-upstream.jsonl`
## v2.2.0 (2026-05-20)
- **Added per-provider Reasoning controls in endpoint editor**