Files
AnyImage/openspec/changes/remove-debug-workflows/tasks.md
nan 4c902ed7db feat(node_assets): add image plane geometry nodes and validation scripts
- Implemented `image_plane.py` to build the Image Plane Geometry Nodes group with customizable parameters for geometry, subdivide, and thickness.
- Created `image_plane_validation.py` to validate the functionality of the image plane, ensuring correct geometry generation and material assignment.
- Developed `material_layers.py` to construct shader node groups for image materials, including depth and normal handling.
- Authored `plane_layouts.py` to define node arrangements for image geometry assets.
- Introduced `shadeless.py` to create a shadeless shader node group that displays color without scene lighting while preserving shadows and reflections.
2026-09-08 23:24:27 +08:00

4.2 KiB
Raw Blame History

1. Blender 入口与设置

  • 1.1 删除 Debug 主面板、四个子面板和专用绘制函数,清理 panel.py 导入及扩展注册项。
  • 1.2 删除 operators/debug.py 及 Operator 注册项,验证正式类型注册与逆序注销。
  • 1.3 按引用删除 Debug 专用 Scene 属性、枚举回调和 da3_parameters,保留正式输入校验、moge2_parameters、video_frames 及偏好设备设置。

2. Server 实现与依赖

  • 2.1 删除四个 Debug Job 的注册和 jobs/debug_predictions.py。
  • 2.2 删除 server/outputs/ 专用包、copy_frames 及媒体模块导出,清理孤立导入。
  • 2.3 沿删除后的调用链检查模型适配与公共模块,移除仅服务 Debug 的分支,确认正式预测数据转换和产物写出仍完整。

3. 测试与验收

  • 3.1 删除 Debug 专用测试及测试模块加载,更新 Blender 注册与 Scene 属性断言。
  • 3.2 更新 Server Job 注册和打包文件清单测试,验证 Debug Job、模块及导出缺席;使用文件选择检查,避免生成扩展包。
  • 3.3 将 Debug 测试中仍适用的公共模型断言移到正式入口,验证模型选择、设备、输入校验、多帧、产物及最终推理内存释放。
  • 3.4 运行 Debug 删除相关测试,复查 src、tests、tools 及运行配置中的 Debug 引用,确认无残留实现或失效导入。

4. 全部测试整理

  • 4.1 逐文件审查全部测试类、用例和辅助代码,列出保护的行为与风险,决定保留、合并、重写或删除。
  • 4.2 删除失效、无独立价值的重复用例和单纯复述实现的断言,保留所有仍适用的独有行为覆盖。
  • 4.3 按实际职责整理全部测试文件、类和函数名,拆分跨功能集合,包括 Blender 注册、设备、Runtime、媒体输入、模型下载与 Job 输出。
  • 4.4 清理 fixture、动态导入和辅助函数,仅提取确有复用的代码,核对整理前后关键风险覆盖。

5. 节点资产源码整理

  • 5.1 遍历 tools/node_assets/ 全部模块,核对文件名与构建对象、几何处理、布局及验证职责,确定目标命名和拆并方案。
  • 5.2 按稳定功能重命名或拆并模块,同步全部导入、tools/build_node.py 脚本列表和测试加载路径,移除旧路径与转发代码。
  • 5.3 通过针对性测试核对 socket 顺序、默认值、运算、连接和布局保持一致,将源码、测试、文档和正式资产中的 O Mesh Plane 统一为 O Image Plane。

6. 内部文档整理

  • 6.1 对照最终源码审查 docs/internals/ 全部页面,核对功能名、路径、参数、调用链、产物和实际职责。
  • 6.2 重整总览、架构、Common、Runtime、产物和开发说明,按主题调整文件名与层次,合并重复内容并删除过期说明。
  • 6.3 重整全部 Operator 页面和索引,删除 Debug 专页与引用,以 Mermaid 流程说明正式功能主链。
  • 6.4 更新节点资产文档,使模块名、节点组、接口、构建与验证流程对应实际实现。
  • 6.5 同步 mkdocs.yml 导航和全部受影响的内部链接,检查链接与源码引用有效性。

7. 最终验收

  • 7.1 运行 uv run pytest,处理行为回归与测试收集问题,核对关键功能覆盖。
  • 7.2 复查全部改名的旧路径、失效导入和文档引用,确认 tests、node_assets、docs/internals 的名称与内容边界一致。
  • 7.3 核查最终差异并汇报主要删除、合并、重命名与验证结果;确认未构建文档、扩展包或重建节点资产;已有资产仅修改图像平面组名并验证内容一致。

验证结果

  • uv run pytest -q:724 passed、2 xfailed、48 subtests passed,退出码 0。
  • 模拟 Blender 测试仅拦截 Python 导入,保留真实 bpy 模块身份,并恢复原有 AnyImage 模块,避免原生退出崩溃。
  • 23 个节点源码模块经 AST 比对,变化仅限命名与导入。
  • 使用项目配置的 Blender 对原有资产重命名;保存前后节点接口、属性、默认值、连接和布局一致。
  • 内部文档链接、Python 语法和 OpenSpec 严格校验通过。