What's Changed
- feat(file-ipc): add bounded chunk reads by @eeee0717 in #17152
- fix(file-preview): unify file and artifact preview routing by @zhangjiadi225 in #17646
- refactor(design-tokens): converge semantic color contract by @zhangjiadi225 in #17535
- chore(renderer): remove dead v1 prompt tool-call residue by @vaayne in #17686
- test(renderer): complete remaining frontend test convergence by @zhangjiadi225 in #17676
- feat(provider-settings): allow changing the default endpoint by @DeJeune in #17691
- feat(provider): add Radeon Cloud integration by @JoursBleu in #16622
- fix(agent-permission-mode): stop defaulting new agents to auto by @vaayne in #17690
- feat(knowledge): show folder import copy progress by @eeee0717 in #17655
- fix: distinguish mini app launchpad icon from window pin by @Pleasurecruise in #17683
- feat(chat-citations): restore inline web search and knowledge base citations by @eeee0717 in #17590
- test(renderer): consolidate frontend regression coverage by @zhangjiadi225 in #17671
- fix(agent-migration): reset stale filesystem targets by @DeJeune in #17687
- fix(chat): sync multi-model context selection by @ousugo in #17371
- feat(provider-registry): support DeepSeek V4 Flash Responses API by @DeJeune in #17694
- fix(agent-permission-mode): keep the mode warning out of single-line rows by @vaayne in #17698
- feat(file-preview): stream PDF previews via range reads by @eeee0717 in #17153
- fix(agent-runtime): handle missing Claude invocation models by @DeJeune in #17670
- feat(chat-greeting): generate contextual empty-state greetings by @SiinXu in #17408
- fix(data-migration): match global model metadata for custom providers by @tommyzhang100504 in #17692
- fix(paintings): open on an empty page by @kangfenmao in #17660
- fix(provider-settings): reject invalid API key characters by @Pleasurecruise in #17678
- feat(file-manager): content-based dedup detection for internal files by @EurFelux in #17210
- refactor(file-ipc): audit legacy file IPC and begin superseding FileStorage by @EurFelux in #16735
- feat(file-manager): policy-based file entry GC with cleanup_policy and scan reaper by @EurFelux in #16727
- test(job,stream-manager): remove wall-clock races from cancel and idle-timeout tests by @EurFelux in #17707
- fix(onboarding): skip redundant privacy agreement writes by @DeJeune in #17708
- fix(ui): keep focus feedback within control bounds by @DeJeune in #17436
- refactor(ui): polish settings, chat, and resource interfaces by @kangfenmao in #17710
- fix(agent-messages): prevent virtual list blanks after send by @zhangjiadi225 in #17677
- chore: release v2.0.0-rc.4 by @kangfenmao in #17734
New Contributors
- @JoursBleu made their first contribution in #16622
Full Changelog: v2.0.0-rc.3...v2.0.0-rc.4