- Delete update-changelog.yml by @pushpak1300 in #525
- Add error handling tests for VoyageAI reranking by @mosabbirrakib in #527
- Add error handling tests for OpenAI image generation by @mosabbirrakib in #528
- Add error handling tests for VoyageAI embeddings by @mosabbirrakib in #526
- Handle Anthropic pause_turn server-tool continuations by @CodeWrap in #493
- Add sub-agent support as tools by @JVillator0 in #348
- Make conversation/message table names configurable by @timmcleod in #484
- Add error handling tests for image generation (Gemini, AzureOpenAI, OpenRouter) by @mdalikadar in #545
- Add rate limit and overloaded error tests for ElevenLabs audio by @mosabbirrakib in #542
- Add rate limit and overloaded error tests for Cohere reranking by @mosabbirrakib in #540
- Add rate limit and overloaded error tests for Jina reranking by @mosabbirrakib in #541
- Add tests for Gemini image generation safety blocks by @mosabbirrakib in #547
- Add error handling tests for embeddings (OpenAI, Gemini) by @mdalikadar in #546
- Fix parameter name in GeneratesEmbeddings PHPDoc by @mosabbirrakib in #549
- Remove stale @param and unused Request import in Vercel protocol trait by @mosabbirrakib in #551
- Fix nonexistent ImageAttachment type in image-related PHPDoc by @mosabbirrakib in #550
- Add error handling tests for AzureOpenAI image generation by @mosabbirrakib in #537
- Mark nullable size and quality docblocks across image gateways by @mosabbirrakib in #552
- Broadcast stream_failed event when BroadcastAgent job fails by @sumaiazaman in #536
- Gemini context cache support via cachedContent param in agent provider options by @dumbbellcode in #556
- Fix: DeepSeek 400 Bad Request on multi-turn tool-calls by preserving
reasoning_contentby @k1rana in #534 - OpenRouter TTS and STT support by @ondrejehrlich in #559
- Support provider options in embeddings by @dumbbellcode in #555
- Enable failover during stream iteration by @kachelle in #279