# WBV2-P30-002: implement_camera_light_world_workbench - task: WBV2-P30-002 - parent: WBV2-P30-001 - status: in_progress - gap: RENDER.SCENE_PROPERTIES - ownerFamily: RENDER - targetImplementationClass: SOURCE_BACKED ## 目标 Expose camera, light and world property commands through the workbench. ## 输入与范围 - Focused Main source: `blender-5.2.0/source/blender/web_engine/web_engine_main_state.cpp` - Focused protocol: `web/protocol/web-engine.ts` - Implementation entrypoint: `node tools/web/generate-wbv2-animation-render-slice.mjs --task WBV2-P30-002 --write` ## 验收 - real source or WebEngine Main implementation is present and connected - worker/client/frontend route uses typed protocol without a duplicate shim - malformed, unsupported, hash-drift or false-completion input fails closed - implementation smoke is reproducible; Chromium receipts, undo/redo, save/reopen and deterministic verification remain deferred - `node tools/web/check-task-context.mjs --task WBV2-P30-002 --write` ## 交付与回滚 - Reports: `tests/golden/WBV2-P30-002/` - Status: `docs/status/WBV2-P30-002.md` - Manifest: `tests/golden/WBV2-P30-002/manifest.json` - Rollback: restore WBV2-P30-001 as queue parent and leave the slice in_progress.