# WBV2-P1168-001: verify auto-generated native compositor reader batch - task: WBV2-P1168-001 - parent: WBV2-P1168-000 - status: in_progress - gap: capability:AUTO_COMPOSITOR_NATIVE_NODE_READER - ownerFamily: NODES - targetImplementationClass: LOCAL_EXACT - batchId: WBV2-P1168-001:AUTO_COMPOSITOR_NATIVE_NODE_READER:56e154dff1afd9ba - selectedRecordIds: ["node:CompositorNodeDenoise","node:CompositorNodeDespeckle","node:CompositorNodeDiffMatte","node:CompositorNodeDilateErode","node:CompositorNodeDisplace","node:CompositorNodeDistanceMatte","node:CompositorNodeDoubleEdgeMask","node:CompositorNodeEllipseMask"] - commandBudget: max=48; read/exploration max=16 - Implementation entrypoint: `node tools/web/run-wbv2-module-task.mjs --task WBV2-P1168-001 --write` ## 目标 以一个共享 Blender Main reader、WASM build、Worker 路由和 Chromium receipt 批量验证 CompositorNodeDenoise, CompositorNodeDespeckle, CompositorNodeDiffMatte, CompositorNodeDilateErode, CompositorNodeDisplace, CompositorNodeDistanceMatte, CompositorNodeDoubleEdgeMask, CompositorNodeEllipseMask 的真实 modifier/RNA 元数据。 ## 输入与范围 - Blender modifier sources: `blender-5.2.0/source/blender/modifiers/intern/` - RNA source: `blender-5.2.0/source/blender/makesrna/intern/rna_modifier.cc` - Native reader: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp` - Fixtures: `tests/files/web/generated/wbv2-compositor-56e154dff1afd9ba.blend` - Chromium test: `web/tests/e2e/compositor-main-reader-production.spec.ts` - Selected modifier units: `modifier-source:CompositorNodeDenoise`, `modifier-source:CompositorNodeDespeckle`, `modifier-source:CompositorNodeDiffMatte`, `modifier-source:CompositorNodeDilateErode`, `modifier-source:CompositorNodeDisplace`, `modifier-source:CompositorNodeDistanceMatte`, `modifier-source:CompositorNodeDoubleEdgeMask`, `modifier-source:CompositorNodeEllipseMask` - Selected RNA units: none (source-only dependency batch) ## 验收 - one shared Main/WASM/Worker/Chromium chain observes every selected type - malformed input is rejected without Main mutation - save/reopen and deterministic second read are exact - only Chromium is used; JS simulation and per-API duplicate workers are forbidden - each selected source unit receives an explicit hash-bound coverage binding - `node tools/web/check-task-context.mjs --task WBV2-P1168-001 --write` ## 失败边界 - any missing source, unsupported type, hash drift, malformed data or non-exact recovery keeps the batch `in_progress`/`blocked` - partial batch success never claims the omitted family; historical inventory remains read-only ## 交付与回滚 - Receipt: `tests/golden/WBV2-P1168-001/module-receipt.json` - Aggregate production evidence: `tests/golden/WBV2-P1168-001/modifier-reader-batch-production.json` - Manifest: `tests/golden/WBV2-P1168-001/manifest.json` - Status: `docs/status/WBV2-P1168-001.md` - Rollback: restore WBV2-P1168-000 as queue parent without rewriting prior evidence.