Files
nexus/wiki/concepts/Incremental-Graph-Update.md

1.3 KiB
Raw Blame History

title, type, tags, sources, last_updated
title type tags sources last_updated
Incremental Graph Update concept
graph
real-time
file-watching
lsp-index-engineer
2026-04-25

Definition

增量图谱更新Incremental Graph Update是 LSP/Index Engineer 维护代码语义图谱的核心策略——通过文件监视器File Watchers和 Git hooks 检测变更,仅更新受影响的图谱子图,而非全量重建,从而实现亚秒级增量同步。

Trigger Mechanisms

  • 文件监视器:监听文件系统变更,触发相关符号的重新索引
  • Git hooks:在提交前后执行图谱增量更新,确保版本控制集成
  • WebSocket 推送:将图谱差异实时推送至连接的客户端

Consistency Guarantees

LSP/Index Engineer 的原子性保证:图谱更新必须是原子性的——从不将图谱置于不一致状态。具体约束:

  • 每个符号有且仅有一个定义节点
  • 所有边必须引用有效节点 ID
  • 文件节点必须在符号节点之前创建
  • 导入边必须解析到实际文件/模块节点

Performance Impact

增量更新使得图谱在 100k+ 符号规模下依然保持亚秒级响应:

  • 文件保存后 → 图谱更新传播至客户端 <500ms
  • 单个文件变更 → 仅更新受影响子图,而非全量重建
  • WebSocket 推送延迟 <50ms