Skip to content

[v4-02] DSL 双向同步 — 节点图 ↔ neon 代码互转 #110

Description

@HeDaas-Code

目标

节点图和 neon 源码双向同步:改图 → 自动生成代码,改代码 → 自动更新图。

范围

  • GraphToMarkdown 序列化:NodeGraph → .md 文件(neon 围栏格式)
  • MarkdownToGraph 反序列化:.md 文件 → NodeGraph(复用 interpreter.py 解析)
  • 双向同步策略:
    • 图编辑 → 标记 dirty → 延迟写 .md(防抖 500ms)
    • 代码编辑 → 解析 → 更新图布局(保留用户手动布局位置)
  • 布局持久化:节点位置存到 .md 元数据注释(# @pos:100,200)或单独 .layout.json
  • 冲突处理:代码手动修改后图自动重排受影响节点
  • 文件监听:QFileSystemWatcher 监听 .md 变化 → 自动重载

依赖

  • v4-01(节点图编辑器)
  • core.engine.interpreter(已有解析器)

验收

  • 在图里新建节点 → .md 文件自动新增对应 neon 块
  • 手动编辑 .md → 图自动更新
  • 手动拖拽的节点位置在重载后保持

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestready-for-agent已完全规格化,可由 AI agent 接手

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions