编辑引擎

wescode 的编辑增强系统:三级匹配、diff 预览与 buffer 同步。


三级匹配

AI 编辑按精确度分为三级:

级别机制精确度
L1 精确匹配逐字符比对原文最高
L2 模糊匹配容忍空白差异中等
L3 回退匹配EditMatchFallback hook兜底

当 L1/L2 都匹配失败时,CellSpec.EditMatchFallback 提供应用层自定义回退。


Buffer Overlay(INV-EDIT-01)

核心原则:AI 的 read 工具优先读编辑器内存中的最新内容,而非磁盘旧版本。

工作机制

  1. WescodeBufferSync 监听 onDidChangeContent,debounce 400ms
  2. 推送 dirty buffer 到后端 BufferStore
  3. OverlayFileProvider 在 ReadFile 时先查 BufferStore
  4. 未命中才落到磁盘 LocalFileProvider

关键约束


Diff 预览

AI 编辑产出的变更通过 InlineDiffController 展示:

  1. Accept:纯 UI 清理(清 decoration + 清 checkpoint)
  2. Reject:磁盘回滚 + textFileService.revert(uri) 重同步

AI 编辑后 buffer === disk(无 dirty 状态)

edit.applied 处理完成后:


格式化

格式化是写操作的一部分,由 Go 后端 pre-write 处理。

已删除 WescodeAutoFormatter(在编辑器内存格式化但不 save,是 dirty 的主要来源)。


相关文档