# WBV2-P31-001: implement_resource_workbench - task: WBV2-P31-001 - parent: WBV2-P31-000 - status: in_progress - gap: IO.RESOURCE_WORKBENCH - ownerFamily: IO - targetImplementationClass: SOURCE_BACKED ## 目标 Expose packed VFonts, sounds, speakers, text blocks, textures and particle settings through a bounded resource workbench. ## 输入与范围 - Focused protocol: `web/protocol/web-engine.ts` - Implementation entrypoint: `node tools/web/generate-wbv2-resource-scene-slice.mjs --task WBV2-P31-001 --write` ## 验收 - real source or WebEngine Main path is wired - 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-P31-001 --write` ## 失败边界 - malformed and unsupported resource payloads fail closed with a typed diagnostic - implementation evidence never changes the historical inventory or provenance epoch ## 交付与回滚 - Reports: `tests/golden/WBV2-P31-001/` - Status: `docs/status/WBV2-P31-001.md` - Manifest: `tests/golden/WBV2-P31-001/manifest.json` - Rollback: restore WBV2-P31-000 as queue parent and leave the task in_progress.