# WBV2-P1100-001: verify_render_light_camera_module - task: WBV2-P1100-001 - parent: WBV2-P1100-000 - status: in_progress - gap: workflow:module_render_light_camera - ownerFamily: RENDER - targetImplementationClass: LOCAL_EXACT - moduleId: RENDER_LIGHT_CAMERA ## 目标 Complete one coherent Blender function module through shared Main primitives and an aggregate operator case matrix. ## 输入与范围 - Source paths: - `blender-5.2.0/source/blender/web_engine/web_engine_main_state.cpp` - `blender-5.2.0/source/blender/web_engine/web_engine_main_state.h` - `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` - `web/protocol/scene-ir.ts` - `web/protocol/web-engine.ts` - `web/app/src/workers/web-engine.worker.ts` - `web/app/src/app/App.tsx` - `web/app/src/vendor/blender/web_engine.wasm` - Reused receipts: - `tests/golden/WBV2-P595-002/manifest.json` - `tests/golden/WBV2-P595-002/implementation-report.json` - `tests/golden/WBV2-P596-002/manifest.json` - `tests/golden/WBV2-P596-002/implementation-report.json` - `tests/golden/WBV2-P597-002/manifest.json` - `tests/golden/WBV2-P597-002/implementation-report.json` - `tests/golden/WBV2-P598-002/manifest.json` - `tests/golden/WBV2-P598-002/implementation-report.json` - `tests/golden/WBV2-P599-002/manifest.json` - `tests/golden/WBV2-P599-002/implementation-report.json` - `tests/golden/WBV2-P600-002/manifest.json` - `tests/golden/WBV2-P600-002/implementation-report.json` - `tests/golden/WBV2-P601-002/manifest.json` - `tests/golden/WBV2-P601-002/implementation-report.json` - `tests/golden/WBV2-P602-002/manifest.json` - `tests/golden/WBV2-P602-002/implementation-report.json` - `tests/golden/WBV2-P603-002/manifest.json` - `tests/golden/WBV2-P603-002/implementation-report.json` - `tests/golden/WBV2-P604-002/manifest.json` - `tests/golden/WBV2-P604-002/implementation-report.json` - `tests/golden/WBV2-P605-002/manifest.json` - `tests/golden/WBV2-P605-002/implementation-report.json` - `tests/golden/WBV2-P606-002/manifest.json` - `tests/golden/WBV2-P606-002/implementation-report.json` - Implementation and verification entrypoint: `node tools/web/run-wbv2-module-task.mjs --task WBV2-P1100-001 --write` ``` node tools/web/run-wbv2-module-task.mjs --task WBV2-P1100-001 --write ``` ## 验收 Positive cases: setLightProperties, setWorldProperties, setCameraProperties, camera panorama, world environment, light shadow/cascade Negative boundaries: invalid enum, invalid numeric bounds, near/far conflict, unknown target, stale revision Recovery: undo, redo, save/reopen, worker disposal Commands: - `npm --prefix web run typecheck` - `npm --prefix web run test:lighting-field-roundtrip` - `npm --prefix web run test:e2e -- --workers=1 tests/e2e/wbv2-lighting-fields-production.spec.ts tests/e2e/lighting-field-roundtrip.spec.ts` Malformed or unsupported input must fail closed. A module advances only when source hashes, positive Main mutation, negative no-mutation, undo/redo, save/reopen, Chromium and aggregate manifest checks pass. A representative case never claims full-family parity. ## 交付与回滚 - Reports: `tests/golden/WBV2-P1100-001/` - Manifest: `tests/golden/WBV2-P1100-001/manifest.json` - Status: `docs/status/WBV2-P1100-001.md` - Rollback: restore WBV2-P1100-000 as queue parent and leave this module in_progress.