# WBV2-P1113-000: shader material module - task: `WBV2-P1113-000` - parent: `WBV2-P1112-000` - status: `in_progress` - gap: `workflow:module_shader_material` - ownerFamily: `MATERIAL` - targetImplementationClass: `LOCAL_EXACT` ## 目标 按功能模块验证 Principled/Image/Normal/Math shader graph 编译、compile key 稳定性、unknown-node gate 及失败后保留旧材质管线。 ## 输入与范围 - Blender Main/API/reader: `blender-5.2.0/source/blender/web_engine/web_engine_main_state.cpp`, `blender-5.2.0/source/blender/web_engine/web_engine_api.cpp`, `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp` - Protocol: `web/protocol/web-engine.ts`, `web/protocol/shader-graph.ts`, `web/protocol/shader-graph-commands.ts`, `web/protocol/shader-compiler.ts`, `web/protocol/render-capabilities.ts` - Runtime: `web/app/src/engine-client/WebEngineClient.ts`, `web/app/src/workers/web-engine.worker.ts`, `web/app/src/app/App.tsx` ## 验收 ```bash npm --prefix web run test:shader-compile npm --prefix web run test:shader-pipeline npm --prefix web run test:shader-capability npm --prefix web run typecheck ``` 必须记录真实 Main shader compile 正例、unknown node/cycle/backend 负例、旧材质回滚、worker restart、save/reopen、确定性 compile key 和 Chromium。完整材质家族仍不宣称 parity。 ## 交付与回滚 - Receipt: `tests/golden/WBV2-P1113-000/module-receipt.json` - Manifest: `tests/golden/WBV2-P1113-000/manifest.json` - Status: `docs/status/WBV2-P1113-000.md` - 回滚:恢复 P1112 manifest 为 queue parent。