V3.7#24
Merged
Merged
Conversation
- 右侧栏宽度改为按窗口比例(ratio)存储,px 由响应式 windowWidth 实时派生, 上限改为窗口宽的 60%(去掉 720px 硬顶),旧的固定 px 数据经 migrate 自动换算 - 状态面板移除常年为空的 LSP tab 与 plugins tab,仅保留 servers + MCP - 插件抽成独立侧栏项 side-panel-plugins.tsx,新增到右侧栏菜单(dot-grid 图标) - rightPanelMode 联合类型加入 "plugins" - i18n: "状态" → "服务器与MCP" / "Servers & MCP" - 同步 bun.lock 中 desktop 版本 1.0.1 → 1.1.0 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
V3.6 Phase 0-3 + V3.7 Phase 4.1-4.6,涵盖文件预览/编辑/管理、 LSP 智能、终端分栏、编辑锁、DAP/PAP 调试剖析可视化。 Phase 0(Bug 修复) - fix: 文件树点击预览接线(FileTabContent 死代码挂载) - fix(core): 审阅知识 provenance 过滤,内置种子包不再污染 Review 队列 - fix(app): 终端 tab 溢出:tab 独立滚动,新建按钮固定右侧 Phase 1A — 后端文件写路由 - feat(backend): write/create/delete/rename/mkdir HTTP 端点 - feat(backend): LocationMutation 越界防护,绕过 agent PermissionV2 - feat(sdk): File 类新增 5 个 mutation 方法 Phase 1B — 前端 IDE 编辑器 - feat(app): code-editor.tsx (CodeMirror 6) - feat(app): ide-file-editor.tsx (保存/脏状态/CAS 冲突/编辑锁) - feat(app): context/file.tsx 新增 mutation 与 lock 方法 - feat(app): files 面板文件树↔IdeFileEditor 两态;新建工具栏 Phase 2 — LSP HTTP 路由 - feat(backend): diagnostics/hover/definition/completion/codeAction/rename - fix(backend): LSP handler 查询前 touchFile 同步磁盘内容 - feat(sdk): Lsp 类新增 6 个方法 Phase 3 — 侧栏 IA - refactor(app): sidebar.review 改名"知识治理",区分代码审查 - refactor(app): 去除终端/状态双入口;插件改名"扩展与服务" Phase 4.1 — LSP→CodeMirror + FileLockService - feat(app): lsp-coords.ts + lsp-extensions.ts (诊断/hover/补全/跳转) - feat(app): CodeEditor LSP Compartment (enableLsp/breakpoints/gotoLine) - feat(core): file-lock.ts FileLockService 人锁优先 TTL 30s - feat(backend): /file/lock 路由;write 加 human 锁检查 - fix(core): Agent write tool 感知 human 锁返回 blocked Phase 4.2 — 终端真分栏 - feat(app): terminal.tsx PaneLeaf/PaneSplit/PaneNode pane tree 模型 - feat(app): terminal-panel.tsx PaneRenderer 递归渲染 + ResizeHandle - feat(app): 底栏多类型 tab (terminal|debug-console) - fix(app): 分栏快捷键移到 ctrl+alt/* 消除冲突 Phase 4.3 — DAP 调试可视化 - feat(backend): /debug/* 10 端点 + SSE /debug/events - fix(backend): start 改用 DebugAdapter 白名单,消除 RCE (P0-1) - feat(app): side-panel-debug.tsx SessionBar/ControlBar/StackView/VariableTree - feat(app): CodeEditor gutter 断点红点 + 暂停行绿箭头 Phase 4.4 — PAP 剖析可视化 - feat(backend): /profile/* 4 端点,复用 ProfileService - fix(backend): base.gate privilege fail-closed,消除 RCE (P0-2) - fix(backend): profile 写 .deepagent/profiles/<runId>/ 独立目录 (P0-3) - feat(app): side-panel-profile.tsx RunBar/HotspotTable/MetricCards/DiffBadge Phase 4.5 — Debug 全链路共享 DebugContext - feat(app): context/debug.tsx 共享 store + 单 SSE 订阅 - feat(app): DebugPanel StartForm 启动入口 (P1-3) - feat(app): Debug Console 订阅 debug.output (P1-5) - fix(app): SSE URL 拼 auth_token (P1-2) - feat(app): 断点/暂停行全接线;start 后 flush 预设断点 (#6) Phase 4.6 — 补强与单测 - fix: CodeEditor gotoLine prop 精确跳转到行 (#5) - test(app): 19 个 pane 纯函数回归测试 - test(core): 10 个 FileLockService 合同测试 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
Issue for this PR
Closes #
Type of change
What does this PR do?
Please provide a description of the issue, the changes you made to fix it, and why they work. It is expected that you understand why your changes work and if you do not understand why at least say as much so a maintainer knows how much to value the PR.
If you paste a large clearly AI generated description here your PR may be IGNORED or CLOSED!
How did you verify your code works?
Screenshots / recordings
If this is a UI change, please include a screenshot or recording.
Checklist
If you do not follow this template your PR will be automatically rejected.