把 write-back 步骤拆成独立模块
新增 steps/write_back.rs,承载保存 State、追加 write-back / outdated 行与漂移文案 把 rebuild_target_state 从 run_workflow.rs 移到 steps/mod.rs,作为已记录 DTO 的重放入口 run_workflow.rs 只保留输入输出类型、三步编排与检查点恢复判定 把 DRIFT_REASON 与两条漂移文案收敛到 write_back 模块,避免编排层和写回层各写一套 同步两份 UI 编辑器技术方案的模块布局与代码地图
This commit is contained in:
@@ -71,10 +71,12 @@ src/ui_editor/design_doc/
|
||||
├─ checkpoint.rs JSONL 追加、读取、轮次判定
|
||||
├─ run_workflow.rs recognize → separate → write-back 编排与恢复
|
||||
├─ steps/
|
||||
│ ├─ mod.rs 用已记录 DTO 重放目标 State
|
||||
│ ├─ recognize.rs 识别 DTO 落 State
|
||||
│ └─ separate/
|
||||
│ ├─ mod.rs 切分 DTO 落 State(回填、清状态、写 NeedReview)
|
||||
│ └─ cut_images.rs 切图图片登记与 SpriteAsset 构造
|
||||
│ ├─ separate/
|
||||
│ │ ├─ mod.rs 切分 DTO 落 State(回填、清状态、写 NeedReview)
|
||||
│ │ └─ cut_images.rs 切图图片登记与 SpriteAsset 构造
|
||||
│ └─ write_back.rs 保存 State、记 write-back / outdated 行、漂移文案
|
||||
└─ test_support.rs design_doc 单测共用夹具
|
||||
src/agent/runtime_tools/ui_design_doc.rs 工具参数解析与 Runtime 侧调用
|
||||
```
|
||||
|
||||
@@ -27,7 +27,7 @@ view/ui-editor (页面/组件)
|
||||
| `component/` | 组件枚举 `Component::{Image, Text}`、`NodeComponent`(LLM 工具载荷的 `PureNode`/`WithComponent` 判别式) |
|
||||
| `resource/` | 界面图(`path` / `pixel_size` / `pixels_per_unit`)、sprite(含 `SpriteBorder` 九宫格)、字体(格式/媒体类型/CSS format)资源描述 |
|
||||
| `persistence.rs` | 文档读写、`revision` 乐观并发保存、领域校验(重复 ID、树/资源引用、组件状态)、代码生成写盘 |
|
||||
| `design_doc/` | Agent 工具链路:`creation.rs` 用一至四张设计图新建文档(登记未登记图片、按 `ui/UI 设计 N.json` 取号、持项目写锁装 revision 0、失败回滚)、`checkpoint.rs` JSONL 检查点日志、`run_workflow.rs` 三步编排与崩溃恢复、`steps/` 逐步落 State(`recognize.rs` 识别、`separate/` 切分:`cut_images.rs` 登记切图与 `SpriteAsset` 构造、`mod.rs` 回填与问题状态) |
|
||||
| `design_doc/` | Agent 工具链路:`creation.rs` 用一至四张设计图新建文档(登记未登记图片、按 `ui/UI 设计 N.json` 取号、持项目写锁装 revision 0、失败回滚)、`checkpoint.rs` JSONL 检查点日志、`run_workflow.rs` 三步编排与崩溃恢复、`steps/` 逐步落 State(`mod.rs` 用已记录 DTO 重放目标 State、`recognize.rs` 识别、`separate/` 切分:`cut_images.rs` 登记切图与 `SpriteAsset` 构造、`mod.rs` 回填与问题状态、`write_back.rs` 保存与漂移文案) |
|
||||
| `html_renderer/` | 由 State 生成 HTML 片段与 JS(maud + 布局/组件 CSS 映射),供预览与 `ui/generated-*.js` |
|
||||
| `commands/` | LLM 工具链:`recognition`(结构识别)、`separation/`(自动切分素材)、`utils.rs`(LLM 请求、重试、`required_tool_arguments`) |
|
||||
| `commands/separation/` | 切分批处理、截图/预切、sidecar 恢复(inspect / finalize / discard)、patch 回写 |
|
||||
|
||||
Reference in New Issue
Block a user