Files
workinf_Blender_Wasm/docs/tasks/WBV2-P1424-001-desktop-completion/DW27.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

52 lines
3.1 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.
# DW27:Text/Console/Info 与扩展生态
- stage: `scripting-preferences`
- queueTask: `WBV2-P1424-001`;parent: `WBV2-P1424-000`;nextTask: `null`
- 包状态:`planned_gap_closure`(并不表示已有源码尚未实现)
- 完整交付依赖:DW13, DW26
- 工作量级:XL;不表示日期承诺
- validation: `NOT_RUN`;acceptance: `NOT_CLAIMED`
## 优先复用的十多天成果
已有原生 Text/Console、PythonSessionClient、模块资源与扩展本地源码。
先对照当前小范围源码和最新交接保留已实现子项;只有缺功能、缺接线或缺必要依赖才新增实现。历史状态不自动当作当前缺口。
## 操作者工作流与交付
编辑脚本 → 执行/调试输出 → 安装扩展 → 启停/更新/卸载 → 重启恢复
可用于日常脚本与支持扩展的完整工作环境,安装和生命周期有真实实现。
## 最小生产入口
- `web/app/src/app/WasmTextEditor.tsx`
- `web/app/src/app/WasmPythonConsole.tsx`
- `web/app/src/engine-client/PythonSessionClient.ts`
- `blender-5.2.0/source/blender/web_engine/web_engine_python.cpp`
- `blender-5.2.0/source/blender/web_engine/web_engine_python_bootstrap.py`
- `blender-5.2.0/source/blender/editors/space_text/text_ops.cc`
以上为聚焦入口,非要求全文加载。使用源码聚焦工具、精确 --source/--unit 和函数片段;接入新 operator 时追加其具体原生文件,单次最多 8 个精确源码文件。没有默认测试入口或要运行的 fixture;功能完成前不执行任何验证。
## 只补未完成部分
1. 补齐 Text datablock、搜索替换、文件关联、缩进、执行、异常定位、保存恢复;Console 多行/历史/补全/命名空间与 Info 报告实际生效。
2. 扩展安装/启用/禁用/升级/移除使用本地 Blender extension 机制,接浏览器文件/网络/缓存权限适配。
3. 纯 Python 与包含原生模块的扩展分别处理,原生模块复用 WASM ABI 构建/装载;不能声称任意桌面 wheel/DLL 直接可用。
4. 依赖版本、模块搜索路径、资源文件和用户配置明确持久化,失败回滚上一个可用扩展与注册状态。
5. 桌面子进程、系统库或设备特有能力给出真实等价适配,未具备时保留具体功能和下一原生修复动作;不能仅改按钮为可点。
## 失败边界
任意第三方扩展兼容不是可凭接口列表保证的结论;未移植二进制依赖不能从全功能缺口中消失。
## 实现交接与后续使用
交付前必须具有实际入口→原生执行→消费者/结果→错误/取消→适用 history/save 的生产代码。这里是实现交付条件,不运行验收;编译成功不能替代功能。旧的已完成子项可引用并保留,不能声称本轮重新实现。
用户使用阶段的场景(现在不执行):编辑脚本并定位异常,安装一个基于已支持原生 API 的扩展,重开后使用并卸载。
每次记录保留成果、补齐断点、仍有缺口、必要构件与下一动作。共同规则见同目录 `EXECUTION.md`,首次领取时阅读;不要将完整计划作为后续执行上下文。