Files
workinf_Blender_Wasm/docs/tasks/WBV2-P1424-001-desktop-completion/EXECUTION.md
mes123456 f3e21c6b98
Some checks failed
M6 deployable RC / quick (push) Has been cancelled
M6 deployable RC / chromium (push) Has been cancelled
M6 deployable RC / release (push) Has been cancelled
chore: checkpoint web Blender migration source, tools and docs
Accumulated uncommitted work: GHOST Web backend, WebGL/GPU web layer,
web workflow engine and protocol, tooling, docs and task records.
Large generated evidence, user-testing archives, build snapshots and
imported test assets remain untracked.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-11-10 11:18:01 +08:00

51 lines
6.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 既有成果复用与实施交接规则
本规则仅供当前工作包使用。任务 WBV2-P1424-001 / parent WBV2-P1424-000 / nextTask=null 不变。
## 首要约束:接续十多天已有移植成果
- 本计划的 DW 编号是“功能补齐责任包”,不是 31 个从零重做的项目。已有 16 模块、34 任务、原生主入口、Python、GPU 与本地候选全部作为基础保留。
- 领取时只读执行队列、当前上下文、本阶段小入口及当前一张 DW 卡;复用证据按需取一个结果的 summary/remaining/changedFiles,随后只检索列出的精确生产入口。不要默认加载总规划、所有 status、完整 route catalog 或 inventory。
- 第一个实现动作是定位同一功能现有 producer→protocol→Worker→consumer→history/storage,辨别“已有实现”“只差接线”“缺必要依赖”“真实缺失”。已有完整实现仅引用并保留,不重复编码/复制协议/创建新 Worker。
- 旧任务卡 planned、早期 remaining、历史 LINK_BLOCKED 和总表 in_progress 都不能单独证明代码尚未实现。结合后续 scoped handoff 和当前聚焦源码判断,不运行验证来决定是否重做。
- 优先复用已有源码、OCCT WASM、WebEngine/Python/Naga、模块及候选。只在所需范围读取其版本/接口/已记录哈希;产物需适配或缺失时增量生成,生成时记录 SHA-256。不得把哈希元数据当功能通过证据,不开展独立证据审计。
- 未在该包聚焦阅读过的原生 operator/node/modifier,不宣称已明确缺失;领取后按模块小批量定位,保留实现存在但未验证这一状态。
## 共同实现契约
一个连贯包包括真实用户入口、原生 Blender 5.2 operator/reader/context、协议/Worker、生产者/消费者、Main/资源所有权、错误/取消、undo/redo 与 save/reopen 的适用语义。UI、GPU、bpy 围绕同一工作流补依赖;这些角色不是可各自宣称全局完成的独立项目。
功能实现必须使用原生 WebEngine/WASM 路径;JS 只作浏览器能力接线。几何运算统一到已有 OCCT 出口,需要的算法语义在此扩展绑定/适配;不能另建平行几何实现。Three.js 只显示。现有服务端/本机能力保留可用性,但不记成 browser-native 移植完成。浏览器等价能力须保留操作者目的、数据与错误语义;纯 OS 机制差异必须有实际可用替代,不用禁用按钮算完成。
每包先沿用旧源代码,再补具体断点。跨包依赖可先实现最小共享接口并回到业务;dependsOn 表示完整交付所需接口,不禁止提前完成独立子项。发现新依赖写入包内剩余,不默认全量重排队列。多个包涉及同一文件时以一个生产所有者串行写入,必要 build/package 串行复用,不能并发覆盖同一产物。
全部功能实现前不运行测试、回归、冒烟、浏览器验收、类型检查、独立语法检查、上下文检查、性能基准或证据审计。源码阅读是定位实现,不能出具验证通过结论。只为生成所需构件做必要增量编译;编译成功不等于功能完成。
## 每轮交接(不作为验证命令)
报告必须列:业务入口;原生 operator/create-info 与 source path;复用的既有结果/构件;保留实现;本轮补齐的具体缺口;仍未实现的精确路由/原因/下一动作;产物及版本元数据(若生成);implementationStatus;validation=NOT_RUN;acceptance=NOT_CLAIMED。不以报告数、循环数、文件数或路由分类数统计完成功能。
状态分开记录:reuse_assessment_pending → implementing_gap / blocked_concrete → implemented_unverified → ready_for_user_use → user_confirmed。计划中的 planned_gap_closure 只表示尚未记录本计划交接,不否认其已有代码。记录包含 codeOrigin 和 previousResult,允许已完整实现的子项直接保留为 implemented_unverified;不虚构本轮开发或通过结果。
缺口条目最低字段:workflow、operator/node/modifier/reader、sourceUnit/sourcePath、entry、producer、consumer、executionRoute、missingBehavior、ownerPackage、nextRepair、implementationStatus。设备或编译器暂不支持仍是明确缺口,不能删除或把“不支持”标成已实现。
每 30 分钟或 3 次实现交接做一次本包聚焦源码梳理;重复同一业务阻塞提前处理。此举不是运行验证。先修源码/绑定/依赖;未解决则保留构件,继续无此依赖的子项,不循环生成无实现变化的报告。实际功能仍未完成,不得通过改状态跳过。
## 产物和交接状态
完成一包说明实现的业务语义闭合,但运行结果仍未验证。每包涉及的逻辑接口与必要构件持续对齐,最终 DW31 汇总完整候选;不能把所有集成拖到最后才发现只有孤立源码。旧已发布产物和候选保留,本阶段不发布部署。
现有 desktop-delivery-manifest 的七阶段 ID 和 focusOrder 保留。新增的包索引是交接计划,现有调度器仍按 stage/focus 工作;不声称它已具备自动 DW DAG 调度。下一安全轮次从阶段 focus 中读取小入口,再沿最新交接选择一个包。不能把完成一张 DW 卡当作整阶段 focus 完成。
队列只认根 manifest 的 nextTask;DW/CS 不创建新的队列任务,不手动推进主队列。计划不会启动、停止或重置已有执行进程。遇到旧阶段进度滞后,按现有真实实现补交接,不能重做业务。
## 后续用户使用
所有目标功能实现完成后进入 USER01,操作者在 Chromium 使用时测试。此时收集具体操作/素材/版本/预期/实际,按原包修复并继续使用;不能提前要求用户代测每个未实现包。仅本包完成不解锁任何中途验证。
源码覆盖记录沿用当前目录历史快照:unitCount=3802、verifiedUnits=1025、unverifiedUnits=2777、sourceTreeSha256=311791df5e2b96c31ee9cefd5ab0c9a8ded87309f1a814c3b92dec328a607d6a。未刷新、不代表当前树哈希;本次计划新增绑定/验证均 0。后续只记实际绑定增量,不伪造 verified 增长。
## 跨包共享接口的交付次序
新计划按 DW 业务依赖领取;旧 CS 卡的 dependsOn 是原专项的串行安排,只作为历史技术参考,不再叠加为第二套硬性调度约束。DW16 先交付通用 image/resource/cancel/recovery 机制,DW19 再接 compositor 消费者,DW30 最后补跨业务系统恢复;CS10/CS11 的跨消费者条目分别随相应包关闭,不要求先完成 compositor 才实现图像后端。DW12 的基础资产事务可以先完成,渲染型预览由 DW17 共同关闭;此类跨阶段必要接口在当前业务阻塞时提前实现,不等到正式阶段切换才补。任何被拆到其他责任包的条目必须保留 ownerPackage,当前包不能把尚缺结果标成完整交付。