81 lines
3.8 KiB
Markdown
81 lines
3.8 KiB
Markdown
# 当前进展
|
||
|
||
## Current Focus
|
||
|
||
- 已完成 `AsyncExecutor` 协作式取消重构;任务句柄稳定持有结果,按实例取消,
|
||
排队任务取消后不执行,运行中任务通过 `std::stop_token` 退出
|
||
- 已修复 LSP UTF-16 位置到 UTF-8 字节偏移和 Tree-sitter 点位的转换,
|
||
中文与 emoji 增量编辑使用一致坐标
|
||
- 已完成参数解析与启动错误处理重构;CLI 参数严格校验,日志默认固定到
|
||
stderr,启动失败使用受控退出码
|
||
- 已完成 Conan 依赖升级;`lsp-server` 当前使用 ConanCenter 可见的最新
|
||
`glaze`、`taskflow`、`spdlog`、`fmt` 与 `tree-sitter` recipe
|
||
|
||
## Recent Changes
|
||
|
||
- vendored `playbook` 快照已通过 subtree 更新并重新同步托管文件
|
||
- `memory-bank` 已迁移到 `tech-context` / `system-patterns` /
|
||
`active-context` 新结构
|
||
- 旧 `docs/prompts/coding/review.md`、
|
||
`docs/prompts/meta/prompt-generator.md`、
|
||
`memory-bank/architecture.md`、
|
||
`memory-bank/tech-stack.md` 已移除
|
||
- `glaze` 已升级到 `7.4.0`,`taskflow` 已升级到 `4.0.0`
|
||
- 已适配 CMake 4.3 `import std` gate、Taskflow 4.0 头文件依赖、
|
||
completion `LSPAny data` 反序列化和 scheduler completion callback 顺序
|
||
- `ArgsParser` 已替换为无状态 `ParseArgs`,并补充参数单元测试与 CLI
|
||
启动回归测试
|
||
- LSP 测试脚本、VSCode 和 Vim 已移除废弃的日志输出选择参数
|
||
- 文本坐标转换新增 ASCII、中文、emoji、跨行、越界和无效 UTF-8
|
||
回归测试;`test_provider` 与 LSP 传输验证通过
|
||
- scheduler 使用 current/active 双索引准确处理重复 ID;`WaitAll` 覆盖登记到
|
||
Taskflow 入队之间的窗口,取消不在状态锁内触发 stop callback
|
||
- 系统库、workspace 加载、文件索引和 workspace folder 枚举已传递
|
||
`std::stop_token`,并在文件边界检查取消
|
||
- scheduler 新增 13 个生命周期与并发回归用例;`test_scheduler`、
|
||
`test_provider`、`tsl-server` 构建和 LSP 传输冒烟验证通过
|
||
|
||
## Next Steps
|
||
|
||
1. 新任务先写到 `docs/superpowers/plans/` 再执行
|
||
2. 进入执行阶段前用 `main_loop.py claim` 领取 Plan
|
||
3. Playbook 升级保持 subtree + sync 的固定顺序
|
||
4. 另行处理既有脚本类测试失败:
|
||
`test_ast_script`、`test_symbol_script`、`test_semantic_script`
|
||
5. 后续任务处理 `--interpreter=~/...` 的主目录展开
|
||
6. 另行处理 `test_lsp_json` 的 rename 响应缺少 `result`;旧服务器二进制
|
||
同样可复现
|
||
|
||
## Open Risks
|
||
|
||
- CIFS 共享目录上的 git 索引状态可能误报脏工作区,
|
||
影响 subtree、status 和 stash 类命令
|
||
- `lsp-server/test/test_tree_sitter/test` 下部分 TSF fixture 仍存在解析失败,
|
||
会导致脚本类 AST / symbol / semantic CTest 失败
|
||
- 系统 CMake 4.4 的 `import std` 实验门值尚未适配;本次使用 CMake 4.3.4
|
||
完成构建验证
|
||
- Clang 22 在 C++ Modules 全量重编译期间曾于 `definitions_test.cppm` 出现一次
|
||
前端崩溃;相同 `-j1` 增量重试成功,未产生源码诊断
|
||
- `vscode/bin/tsl-server` 当前是未拉取的 Git LFS 指针,根目录 LSP 冒烟脚本
|
||
只能完成语法与参数静态验证
|
||
|
||
## Workflow State
|
||
|
||
<!-- workflow-state:start -->
|
||
phase: planning
|
||
spec: docs/superpowers/specs/2026-07-13-lsp-core-lifecycle-design.md
|
||
plan: docs/superpowers/plans/2026-07-13-lsp-core-lifecycle.md
|
||
executor: executing-plans
|
||
constraints: karpathy-guidelines,.agents,AGENT_RULES
|
||
<!-- workflow-state:end -->
|
||
|
||
## Plan Status
|
||
|
||
<!-- plan-status:start -->
|
||
- [x] `2026-05-24-playbook-strong-alignment.md` done
|
||
- [x] `2026-05-24-conan-dependency-upgrade.md` done: known-failures:test_ast_script,test_symbol_script,test_semantic_script
|
||
- [x] `2026-07-11-args-parser-startup-errors.md` done
|
||
- [x] `2026-07-12-text-coordinates-utf16.md` done
|
||
- [x] `2026-07-12-async-executor-cancellation.md` done
|
||
<!-- plan-status:end -->
|