What's Changed
- fix(provider-registry): resolve prefixed size-colliding model ids to their own override by @404-Page-Found in #18487
- perf(main-runtime): reduce cold idle memory with lazy loading by @DeJeune in #18472
- fix(pins): synchronize pin changes across windows by @zhangjiadi225 in #18499
- fix(topic-move): make cross-assistant moves atomic by @zhangjiadi225 in #18501
- fix(tab-retention): bound background memory usage by @zhangjiadi225 in #18504
- fix(message-service): delete conversations past SQLite's cascade depth limit by @DeJeune in #18479
- perf(mcp-settings): isolate log tab updates by @DeJeune in #18473
- fix(data-api): bound inactive conversation history cache by @zhangjiadi225 in #18505
- ci(update-mergeable-prs): merge main into approved PRs that are behind by @DeJeune in #18524
- feat(cherry-support): add built-in support agent by @SiinXu in #18498
- fix(workspace-selector): avoid duplicate refresh by @KXHXK in #18475
- fix(topic-branch): avoid duplicate tree refetch by @DeJeune in #18470
- fix(global-search): virtualize message previews by @DeJeune in #18402
- feat(notification): add app update notification preference by @kovsu in #18332
- fix(model-list): query OVMS for its servable status on /v1/config by @kennyzheng-builds in #18482
- fix: prefer chat endpoints for mixed model health checks by @kennyzheng-builds in #18447
- fix(file): accept parameterized base64 data URLs by @VectorPeak in #17406
- perf(renderer): consolidate first-paint lazy loading by @DeJeune in #18405
- fix(agent-list): place newly created agents first by @SiinXu in #18427
- fix(dashscope): register qwen-image-3.0 image models by @DeJeune in #18527
- fix(model-pricing): preserve currency and derive tier input totals by @chujiamo in #18453
- feat(skill-install): install a skill from a GitHub SKILL.md URL by @DeJeune in #18438
- fix(provider-model-migration): skip invalid legacy model IDs by @kangfenmao in #18381
- fix(i18n-translate): validate machine translations before writing them by @DeJeune in #18510
- fix(chat-composer): preserve width across topic switches by @zhangjiadi225 in #18529
- fix(agent-migration): continue past overlapping workspaces by @kangfenmao in #18372
- fix(file-migration): copy trailing-space/dot ext uploads to their v2 name by @DeJeune in #18514
- fix(topic-naming): use quick assistant model by @kangfenmao in #18517
- fix(chat-attachments): sanitize bad mediaType before provider dispatch by @DeJeune in #18481
- fix(conversation-sidebar): preserve collapsed pane state by @zhangjiadi225 in #18507
- fix(artifact-pane): repair malformed Windows artifact paths by @AtomsH4 in #18516
- fix(provider-registry): remove stale CherryIN DeepSeek aliases by @AtomsH4 in #18526
- fix(api-gateway): stop the gateway from starting itself by @DeJeune in #18523
- fix(cache): prevent detached window stream stalls by @zhangjiadi225 in #18531
- refactor(icons): load icons per key instead of whole catalogs by @zhangjiadi225 in #18441
- fix(vertex-ai): preserve default service routing by @ousugo in #18174
- feat(agent-runtime): add pi as a second agent-session runtime driver by @vaayne in #16630
- chore: release v2.0.5 by @kangfenmao in #18541
New Contributors
Full Changelog: v2.0.4...v2.0.5