Commit f9e77eb
fix: 修复 ExecuteTool 委托 null result 导致的 worktree UI 崩溃及 debug 日志 ENOENT
ExecuteTool 在内部工具调用失败时产出 result: null,其 renderToolResultMessage
通过 as never 将 null 直接传给 EnterWorktreeTool 的 UI,导致读取 output.worktreeBranch
时抛出 TypeError。修复方案:在 ExecuteTool 委托前增加 null 检查,同时为
EnterWorktreeTool/ExitWorktreeTool 的 renderToolResultMessage 增加 !output 防护。
debug.ts 中 getDebugFilePath 返回相对路径,appendFileSync 在某些场景下
因 CWD 变化抛出 ENOENT 击穿到 RootREPLBoundary。修复方案:路径 resolve 为
绝对路径,writeFn 增加重试机制,二次失败静默吞错不阻塞 UI。
Co-Authored-By: glm-5.2 <zai-org@claude-code-best.win>1 parent 7680c29 commit f9e77eb
4 files changed
Lines changed: 35 additions & 6 deletions
File tree
- packages/builtin-tools/src/tools
- EnterWorktreeTool
- ExecuteTool
- ExitWorktreeTool
- src/utils
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
| 17 | + | |
17 | 18 | | |
18 | 19 | | |
19 | 20 | | |
20 | | - | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
21 | 28 | | |
22 | 29 | | |
23 | 30 | | |
| |||
Lines changed: 6 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
250 | 250 | | |
251 | 251 | | |
252 | 252 | | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
253 | 259 | | |
254 | 260 | | |
255 | 261 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
| 17 | + | |
17 | 18 | | |
18 | 19 | | |
19 | 20 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
90 | 90 | | |
91 | 91 | | |
92 | 92 | | |
93 | | - | |
| 93 | + | |
94 | 94 | | |
95 | 95 | | |
96 | | - | |
| 96 | + | |
97 | 97 | | |
98 | 98 | | |
99 | 99 | | |
| |||
170 | 170 | | |
171 | 171 | | |
172 | 172 | | |
173 | | - | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
174 | 187 | | |
175 | 188 | | |
176 | 189 | | |
| |||
228 | 241 | | |
229 | 242 | | |
230 | 243 | | |
231 | | - | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
232 | 247 | | |
233 | 248 | | |
234 | 249 | | |
| |||
0 commit comments