What's Changed
- fix: handle moderation responses in empty response detection by @Silentely in #2099
- feat: add provider quota collection controls by @Silentely in #2103
- fix(gemini): preserve file data MIME type for Vertex by @llc1123 in #2091
- feat: backup & restore systems config, close #2101 by @looplj in #2104
- feat: response with trace headers, close #2100 by @looplj in #2107
- feat: check new beta version, close #2097 by @looplj in #2111
- fix(frontend): improve requests table mobile responsiveness by @djdembeck in #2118
- fix: reuse bundled Windows binary by @Jonesxq in #2119
- fix(analytics): support MySQL for channel stats by @ChancenJ in #2123
- fix: 修正拼写错误“oltphttp”->“otlphttp” by @bookshiyi in #2121
- fix(frontend): load theme fonts by @llc1123 in #2122
- fix(responses): keep images in tool results instead of dropping them by @GhostFlying in #2117
- feat: add configurable max_multipart_memory for backup restore by @vincentyzhj in #2126
- feat: add per-channel API key rule actions by @Lxiny-zy in #2120
- fix(transformer): 合并连续 function_call/custom_tool_call 为单条 assistant 消息 by @Snowy117 in #2114
- fix(responses): scope fallback prompt_cache_key per conversation by @Kizunad in #2031
- feat(permissions): align project roles with UI access by @brynne8 in #2095
- feat: model load balance strategy by @looplj in #2127
- chore: sync model developers data by @github-actions[bot] in #2131
- fix: admin page permission protect by @hen7777777 in #2138
- fix(responses): handle reasoning text stream events by @cesaryuan in #2151
- fix: harden MemorySize parsing and document max_multipart_memory by @vincentyzhj in #2145
- fix(openai): keep message content valid for strict upstreams by @Lxiny-zy in #2137
- fix(frontend): constrain quota popover width on mobile by @KremeCN in #2143
- fix(frontend): prevent system settings double scroll by @KremeCN in #2142
- fix(cline): align quota windows with API behavior by @KremeCN in #2141
- feat(cline): fetch recommended models dynamically by @KremeCN in #2140
- feat(channels): add Groq channel by @rupaut98 in #2144
- fix(transform): add channel switch to downgrade mid-conversation system messages by @AkaChou in #2124
- feat(requests): show final reasoning_effort in request logs by @AkaChou in #2158
- feat(channels): unified API key management dialog with bulk import by @Lxiny-zy in #2156
- fix(cline): normalize empty message content by @KremeCN in #2155
- fix(frontend): align analytics filter UX by @cesaryuan in #2154
- fix(responses): preserve function calls completed in done events by @MrLiuGangQiang in #2057
- feat(requests): redesign request log table by @brynne8 in #2162
- perf(frontend): virtualize model price dialog to fix lag with many models by @suixinio in #2163
- feat: add sse keep alive, close #2146 by @looplj in #2157
- chore: sync model developers data by @github-actions[bot] in #2176
- feat(channels): per-credential auto disable with scheduled recovery by @zhaozhaozz in #2180
- fix(responses): preserve polymorphic reasoning and Codex metadata by @MedAIerHHL in #2178
- feat(apikeys): sync and transfer profile templates by @MedAIerHHL in #2177
- fix(responses): report truncation and failure in streaming conversion by @Lxiny-zy in #2171
- fix(responses): 兼容 Responses API created_at 的浮点整数形式 by @Silentely in #2187
- fix(stream): report incomplete streams to the client by @zhaozhaozz in #2185
- request 请求体支持 对话阅览 模式,便于请求体数据查看 by @qintang in #2182
- feat: add qiniu/fenno channel by @looplj in #2188
- fix(claude-code): automate cache compatibility and OpenAI effort mapping by @AkaChou in #2172
- feat(models): add thinkingmachines as model developer by @djdembeck in #2190
- fix(sqlite-time-format-compat): 兼容 SQLite TEXT 时间戳格式并修复 backup 注册时区退化 by @Silentely in #2189
- chore: add log for chat heartbeat by @looplj in #2191
- feat: show request cache rate, close #2170 by @looplj in #2193
- fix(responses): retry incomplete streams before done by @wtj-0527 in #2192
- fix: model associate condition caused model not found, close #2183 by @looplj in #2194
New Contributors
- @Jonesxq made their first contribution in #2119
- @bookshiyi made their first contribution in #2121
- @vincentyzhj made their first contribution in #2126
- @Lxiny-zy made their first contribution in #2120
- @Snowy117 made their first contribution in #2114
- @Kizunad made their first contribution in #2031
- @rupaut98 made their first contribution in #2144
- @AkaChou made their first contribution in #2124
- @MrLiuGangQiang made their first contribution in #2057
- @qintang made their first contribution in #2182
- @wtj-0527 made their first contribution in #2192
Full Changelog: v1.0.0-beta6...v1.0.0-beta7