You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits.
Credits must be used to enable repository wide code reviews.
I found 2 noteworthy issues after the code quality, performance, security, and documentation passes.
Medium — web/src/components/panels/FileTreePanel.tsx: openFilePreview still applies readFile results without checking that the active workspace is unchanged. If a user opens the same path in workspace A and workspace B around a switch, the late response from A can still populate the B tab because the tab id is path-based (file:${path}). loadRoot/loadDir now guard against stale workspace responses; this path needs the same protection.
Medium — internal/repository/git.go: untracked-directory expansion now recursively walks every untracked subtree inside loadGitSnapshot. That makes summary / changed-files / diff reads proportional to directory size, and even ReadGitDiffFile for one path pays for a full walk first because it calls loadGitSnapshot. On large generated folders this is a noticeable regression; consider a git-based listing or a capped/lazy expansion.
No additional security or documentation-specific findings.
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
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.
Summary
修复详情
1. 文件变更栏滚动卡住 (FileChangePanel)
hunk 区域
overflowY: visible会将纵向滚轮事件吞掉,导致鼠标悬停在 diff 上时外层列表无法滚动。改为overflowY: hidden,并在 hunk 上显式onWheel转发给外层scrollContainer。同时用flexShrink: 0防止 change card 被 flex 压缩,viewContainer用flex: 1替代固定高度确保撑满。2. git diff 将目录当作文件处理 (git_diff / git)
git status返回未跟踪目录条目(如?? handwrite_res/)时,后端直接把目录当成文件,导致预览打开报错。在loadGitSnapshot中增加未跟踪目录展开逻辑,递归列出目录内的实际文件,同时遵循 gitignore 规则过滤。ReadGitDiffFile遇到目录路径时返回明确的"is a directory"错误语义。3. 工作区切换互串 + 时间乱码 (FileTreePanel / format)
切换工作区后异步请求响应乱序到达,旧工作区的数据覆盖了新工作区的文件树。用
requestToken计数 +activeWorkspaceRef+mountedRef三重校验丢弃过期响应,loadDir同步防护。FileTreePanel加key={workspaceHash}兜底强制重建。relativeTime中 "刚刚" 文案编码损坏导致乱码,同时统一缩进风格。4.修复neocode web的启动失败问题
现在发布版本,CI会自动内嵌dist使得用户构建包版本不会npm缺失报错
5.文件变更栏美化
现在变得更好看了
Test plan