Repository navigation
fix(memory): release Tauri event callbacks across registration races - #1114
Merged
xintaofei merged 2 commits intoNov 10, 2026
Merged
Conversation
kogekiplay
marked this pull request as ready for review
November 10, 2026 02:25
pnpm-workspace.yaml now lists patchedDependencies, which pnpm applies during install. The frontend stage copied only the manifests first, so `pnpm install --frozen-lockfile` failed with ENOENT on the patch file.
Collaborator
|
codeg work task |
xintaofei
added a commit
to kogekiplay/codeg
that referenced
this pull request
Nov 10, 2026
…ith spacering-net#1114) Keep both patchedDependencies entries (@tauri-apps/api and overlayscrollbars) in pnpm-workspace.yaml and the lockfile, combine both patch notes in patches/README.md, and take main's Dockerfile, which already copies patches/ before install.
xintaofei
added a commit
that referenced
this pull request
Nov 11, 2026
This release reduces memory growth during extended use, fixes missing collaboration tools in forked Codex conversations, restores skill selection for custom agents, and updates several agents. ## Improved - **Claude Code is updated to 2.1.322 with adapter 0.106.0.** - **Updated OpenCode to 2.2.7, Kimi Code to 2.5.3, Hermes Agent to 0.23.1 and the ZCode bridge to 0.83.3.** ## Fixed - **Reduced memory buildup during repeated scrolling, view changes and streaming code generation**, improving memory usage during extended sessions. (#1114, #1115, #1117 by @kogekiplay) - **Custom agents with a configured skill directory or shared skill store now list their skills in the `/` menu**, in both chat and automation editors. (#1121 by @ana52070) - **Forked Codex conversations retain their enabled MCP tools**, allowing you to continue delegating work to sub-agents and retrieving their results. (#1105) - **Reopening a conversation no longer adds duplicate context compaction cards after the existing history.** - **OpenCode commands that time out or are terminated no longer incorrectly appear as successful.** - **OpenCode file previews correctly display reads beyond the end of a file**, while reads counted from the end no longer show a misleading line range. - **Reopening older ZCode conversations correctly restores their saved titles.** Thanks to @kogekiplay (#1114, #1115, #1117) and @ana52070 (#1121) for their contributions, and to @lxpsxx (#1105) for the report. ----------------------------- # 发布版本 0.42.3 这一版改善长时间使用时的内存占用,修复 Codex 分叉会话后协作工具丢失、自定义智能体无法选择技能等问题,并更新多个智能体。 ## 改进 - **Claude Code 更新至 2.1.322,适配器更新至 0.106.0。** - **OpenCode 更新至 2.2.7,Kimi Code 更新至 2.5.3,Hermes Agent 更新至 0.23.1,ZCode 桥接更新至 0.83.3。** ## 修复 - **减少反复滚动、切换视图和持续生成代码时的内存累积**,改善长时间使用时的内存占用。(#1114、#1115、#1117 by @kogekiplay) - **配置了技能目录或共享技能库的自定义智能体,可以在 `/` 菜单中选择技能**,聊天输入框和自动化编辑器均可使用。(#1121 by @ana52070) - **Codex 分叉会话后会保留已启用的 MCP 工具**,可以继续委派子智能体并获取执行结果。(#1105) - **重新打开会话时,已有的上下文压缩卡片不会再重复出现在历史记录末尾。** - **OpenCode 中超时或被终止的命令,不再被误标为执行成功。** - **OpenCode 读取位置超出文件末尾时,返回内容仍能正确预览**,从文件末尾倒数读取时也不会再显示错误的行号范围。 - **重新打开较早的 ZCode 会话时,能正确恢复已保存的会话标题。** 感谢 @kogekiplay(#1114、#1115、#1117)和 @ana52070(#1121)的贡献,以及 @lxpsxx(#1105)的反馈。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Tauri 在 native listener 注册完成前就创建 JS callback;WKWebView 上注册 eval 和 invoke response 的顺序不固定,过早清理及注册失败都可能留下 callback 和订阅闭包。这个 PR 直接保存 callback ID,在失败或解绑时释放,并保证 event registry 不可用时仍执行 native unlisten。
按维护者在 #1097 中的建议拆出的第 2 批。分支直接基于最新官方
main:5c03d7af865f54cf42a994327daf2c45ab4a946f,可独立于其他内存修复安装和发布。依赖补丁配置和 lockfile 仅包含 Tauri API 补丁。改动与验证:
event.js/event.cjs,使 global、Webview、Window 的 direct/scoped listeners 使用同一清理逻辑。once在调用用户 handler 前释放,覆盖事件先于 listen response 到达的竞态;解绑保持幂等。pnpm install --frozen-lockfile成功;使用实际安装的 ESM/CommonJS 入口验证。tsc --noEmit --incremental false,包含测试)、ESLint、production build 全部通过。vitest run --maxWorkers=3,保留默认超时)。补丁范围和升级时的复测说明见
patches/README.md。Refs #1097