Skip to content

fix(desktop): clean stale draft stores - #34651

Merged
Brendonovich merged 2 commits into
devfrom
cleanup-drafts
Jul 1, 2026
Merged

fix(desktop): clean stale draft stores#34651
Brendonovich merged 2 commits into
devfrom
cleanup-drafts

Conversation

@Brendonovich

Copy link
Copy Markdown
Member

Summary

  • remove empty scoped desktop store files on startup and after store delete/clear
  • prune stale/capped draft store files while preserving non-empty workspace stores
  • add unit coverage for store cleanup behavior

Test

  • bun test src/main/store-cleanup.test.ts
  • bun typecheck (packages/desktop)
  • bun turbo typecheck (pre-push hook)

@Brendonovich
Brendonovich requested a review from Hona as a code owner June 30, 2026 16:14
@Brendonovich
Brendonovich enabled auto-merge (squash) July 1, 2026 08:50
@Brendonovich
Brendonovich merged commit 2f4d36d into dev Jul 1, 2026
8 checks passed
@Brendonovich
Brendonovich deleted the cleanup-drafts branch July 1, 2026 09:03
avion23 pushed a commit to avion23/opencode that referenced this pull request Jul 20, 2026
3kaiu pushed a commit to 3kaiu/opencode-x that referenced this pull request Jul 31, 2026
MarsQiu007 referenced this pull request in MarsQiu007/openNovel Jul 31, 2026
banlanzs pushed a commit to banlanzs/opencode that referenced this pull request Aug 6, 2026
charlesverge pushed a commit to charlesverge/opencode that referenced this pull request Aug 11, 2026
zoulukuang pushed a commit to zoulukuang/deskfox that referenced this pull request Aug 14, 2026
…6-08]

user 批准后执行(需杀其正在使用的正式版)。做法:装旧版 DeskFox-Dev-2026.7.0(6/15 存量产物)
→ bump dev 号线到 2026.7.1 → 用本分支代码打 NSIS → 升级安装 → 验证 → 卸载 → 验残留。

全部通过:
  · 版本号来自 installer-versions.json(产物名与 UA 均 2026.7.1),非硬编码
  · 升级 58 秒;注册表 `DeskFox Dev 2026.7.0` → `DeskFox 预览版 2026.7.1` **单条替换无重复**,
    且跨 productName 改名(Dev → 预览版)旧 exe 已清除、无双 exe 残留
  · 数据保留:dev appData 1244 文件 / 214.3 MB / 53 workspace 记录升级前后完全一致
  · 卸载:安装目录完全移除、注册表条目移除、appData 按设计保留(deleteAppDataOnUninstall: false)
  · 与 prod 隔离:全程 prod 安装目录 / appData(454 文件)/ 注册表一字未动
  · 修复随包发出:在**装出来的**预览版上跑 win_p0_drop_path.py,拖入插入
    `@docs/中文文件名 带空格.md`(正斜杠)—— P0-1 修复确认进了安装包

沿途两条对**真实发布**有意义的发现,已写进报告 §七:
  ① 上游本次带进来的 store-cleanup(PR anomalyco#34651)会在**老用户首次升级时**一次性清掉空 store
     (实测 17/53)。规则是只删空 store 与陈旧草稿、非空 workspace 永不删,**不是数据丢失** ——
     但量可能不小,建议 release note 提一句,免得被当成故障。
  ② 发布三档共享 opencode.db,而本分支代码比现行正式版新:跑一次预览版就会迁移共享库,
     再退回旧正式版有打不开的风险(仓内记忆里正是这个坑)。本次测试先完整备份 1.4GB 会话库再动、
     测完还原,prod 已验证正常启动。**预览版先行期间需提醒用户别退回旧正式版。**

另:win_p0_drop_path.py 加端口/进程名参数 —— 验安装包时要能对**装出来的那一档**跑同一套判据,
否则「修复有没有随包发出」只能靠翻 app.asar 猜,而它是单一归档、grep 转义不可靠。

installer-versions.json 的 dev-windows 保持 2026.7.1 未回退(产物确实存在过,回退会让台账与磁盘
对不上);docs/installer-versions.md 该条已标注「非发布版本,为验证而打,未 ship」。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KXXHnhA9dDrG69mACtGqA2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant