rig-core-v0.38.0
·
300 commits
to main
since this release
Added
- (rig-derive) replace hand-rolled schema with schemars in #[rig_tool] (#1576) (by @tomasz-feliksik)
- (embeddings) expose token usage via embed_texts_with_usage (#1791) (by @sergiomeneses)
- (openrouter) add prompt-caching support (#1832) (by @gold-silver-copper)
- (openrouter) add with_app_identity and with_app_categories builders for app attribution (#1806) (by @jimmiebfulton)
- (openrouter) surface cache token accounting in Usage (#1808) (by @jimmiebfulton)
- (gemini) expose streaming response metadata (#1790) (by @mateobelanger)
- (anthropic) support document citations (#1778) (by @temrjan)
- (gemini) expose finish_reason and model_version on StreamingCompletionResponse (#1776) (by @mateobelanger)
Fixed
- (openai) tolerate object-form tool-call
argumentsin streaming (#1822) (by @xavierforge) - (chatgpt) Handle ChatGPT response.completed events without output field (#1825) (by @geraschenko)
- (rig-core) Expose tools added via ToolServerHandle::append_toolset (#1837) (by @mccormickt)
- avoid duplicate streaming reasoning history (#1849) (by @gold-silver-copper) - #1849
- (rig-gemini-grpc) populate FunctionDeclaration.parameters from ToolDefinition (#1763) (by @abhicris)
- (openrouter) avoid replaying generated images (#1835) (by @gold-silver-copper)
- (openrouter) accept Gemini model role responses (#1800) (by @puneetdixit200)
- (tools) safely normalize null tool call arguments (#1814) (by @gold-silver-copper)
- (ollama) buffer NDJSON streaming across HTTP chunk boundaries bytes_stream may split a single NDJSON line across chunks, causing serde_json::from_slice to fail mid-stream with an EOF error on longer assistant messages (#1759) (by @ChadBartley)
- (gemini) record tool use prompt token telemetry (#1799) (by @gold-silver-copper)
- default OpenAI base64 image detail (#1781) (by @fangkangmi) - #1781
- stream ToolCallDelta in prompt_request (#1789) (by @notV4l) - #1789
- fix sqlite threshold and null tool call streaming (#1786) (by @gold-silver-copper) - #1786
- (anthropic) serialize ToolResultContent::Image with source wrapper (#1772) (by @Cyanistic)
Other
- Fix parsing of streamed function-call argument deltas (#1828) (by @geraschenko) - #1828
- Add invalid tool call recovery hooks (#1840) (by @gold-silver-copper) - #1840
- [codex] Validate model tool calls (#1823) (by @gold-silver-copper) - #1823
- Cap OpenRouter app categories header (#1821) (by @gold-silver-copper) - #1821
- [codex] apply Anthropic cache control to tools (#1815) (by @gold-silver-copper) - #1815
- Expose per-completion-call usage in agent responses (#1787) (by @gold-silver-copper) - #1787
- Add replayable provider cassette tests (#1769) (by @gold-silver-copper) - #1769