Stability improvements
We made quite a few enhancements to make Fantasy more reliable, mitigating potential issues like tool call loops and similar.
Changelog
Fixed
- 9b236ce: fix: close four remaining stream/replay edge cases (@andreynering)
- 2d13129: fix: close two truncation holes in streamed tool calls (@andreynering)
- eb1ba5e: fix: concatenate multi-segment turns, order parallel results by call (@andreynering)
- af8c1d7: fix: dispatch agent tools only on an explicit tool-calls turn (@andreynering)
- 3046459: fix: gate non-streaming tool dispatch on abnormal finish reasons (@andreynering)
- 41a4548: fix: gate provider-executed OnToolCall on finish; keep stream order (@andreynering)
- 83ef2df: fix: key reasoning state on choice index, suppress filtered tool calls (@andreynering)
- 4ae0746: fix: never repair or finalize fabricated input on truncated turns (@andreynering)
- 4a979a5: fix: pass conversation context to streaming tool-call repair (@andreynering)
- 0510aaf: fix: repair streamed tool calls only after the finish reason is known (@andreynering)
- 722b32a: fix: stop dropping reasoning on deepseek-shaped streams (@andreynering)
Thoughts? Questions? We love hearing from you. Feel free to reach out on X, Discord, Slack, The Fediverse, Bluesky.