{ "schemaVersion": 1, "task": "WBV2-P1350-001", "operation": "MODULE_FUNCTION_EXECUTION", "phase": "CONTINUE", "moduleId": "OBJECT_DELETE_MACRO_BATCH", "batchId": "WBV2-P1350-001:OBJECT_DELETE_MACRO_BATCH:cb1053d26cafd659", "selectedRecordIds": [ "operator:MESH_OT_polybuild_delete_at_cursor" ], "commandBudget": { "maxCommands": 48, "maxReadCommands": 16, "commandCount": 4, "readCommandCount": 0, "withinBudget": true }, "status": "PASS", "source": { "paths": [ "blender-5.2.0/source/blender/editors/mesh/mesh_ops.cc", "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp", "web/tests/e2e/wbv2-object-delete-batch-production.spec.ts", "tests/files/web/basic_scene.blend", "web/app/src/vendor/blender/web_engine.wasm", "web/app/public/vendor/blender/web_engine.wasm", "web/app/public/wasm-module-manifest.json", "web/app/public/vendor/blender/modules/single/web_engine.secondary.wasm", "web/app/public/vendor/blender/modules/pthread/web_engine.secondary.wasm" ], "auditedPaths": [ "blender-5.2.0/source/blender/editors/mesh/mesh_ops.cc", "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp" ], "before": { "blender-5.2.0/source/blender/editors/mesh/mesh_ops.cc": "d475de09707f939e958d66a5dd78f8ef2d6177073e66cfe27d7ab7b3207adf04", "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp": "8a9b46e8f5f9c4b30ad7818fac6fbd64b20dc2d0a962630f50c8f352bdf230d3" }, "after": { "blender-5.2.0/source/blender/editors/mesh/mesh_ops.cc": "d475de09707f939e958d66a5dd78f8ef2d6177073e66cfe27d7ab7b3207adf04", "blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp": "8a9b46e8f5f9c4b30ad7818fac6fbd64b20dc2d0a962630f50c8f352bdf230d3" }, "unchanged": true }, "reusedReceipts": [ { "manifest": "tests/golden/WBV2-P1107-000/manifest.json", "report": "tests/golden/WBV2-P1107-000/module-receipt.json", "manifestSha256": "a53ebdc52db5dcf27d44e938e5551f1ee2adae8e46c3fe8661604ee6b1000f8c", "reportSha256": "6dd419799e1a4b9251328d9496f2459d148cd89118740a06b0ee6ffb78e0b1d2" } ], "cases": { "positive": [ "MESH_OT_polybuild_delete_at_cursor type is read from Blender Main", "shared RNA metadata is preserved", "save/reopen preserves the batch metadata" ], "negative": [ "malformed blend is rejected without Main mutation", "unsupported batch data fails closed", "non-finite metadata is not synthesized" ], "recovery": [ "save/reopen", "worker termination", "deterministic second read" ] }, "commands": [ { "command": "source tools/web/emscripten-env.sh && cmake --build build_web_blender6 --target web_engine -- -j8 && cp build_web_blender6/bin/web_engine.wasm web/app/src/vendor/blender/web_engine.wasm && cp build_web_blender6/bin/web_engine.wasm web/app/public/vendor/blender/web_engine.wasm && node tools/web/split-wbv2-wasm.mjs --input web/app/public/vendor/blender/web_engine.wasm --output-dir web/app/public/vendor/blender/modules/single --split-funcs web_engine_get_live_handles && node tools/web/split-wbv2-wasm.mjs --input web/app/public/vendor/blender/pthread/web_engine.wasm --output-dir web/app/public/vendor/blender/modules/pthread --split-funcs web_engine_get_live_handles", "exitCode": 0, "durationMs": 1164 }, { "command": "npm --prefix web run typecheck", "exitCode": 0, "durationMs": 3288 }, { "command": "npm --prefix web run build", "exitCode": 0, "durationMs": 3928 }, { "command": "WBV2_BATCH_TASK=WBV2-P1350-001 WBV2_BATCH_PRODUCTION=tests/golden/WBV2-P1350-001/object-delete-production.json WBV2_BATCH_FIXTURE=tests/files/web/basic_scene.blend WBV2_BATCH_TYPES='[]' WBV2_BATCH_UNITS='[\"operator:MESH_OT_polybuild_delete_at_cursor\"]' WEB_TEST_PORT=5371 npm --prefix web run test:e2e -- --workers=1 tests/e2e/wbv2-object-delete-batch-production.spec.ts", "exitCode": 0, "durationMs": 2923 } ], "verification": { "required": [ "sourceHash", "wasmBuild", "positiveMainMutation", "negativeNoMutation", "undoRedo", "saveReopen", "aggregateManifest" ], "chromiumOnly": true, "fullFamilyParity": false }, "efficiency": { "existingEvidenceReused": false, "skippedCommands": 0, "totalDurationMs": 11303, "reusePolicy": "hash_bound_receipt" }, "inventory": { "historical": { "path": "tests/golden/WBV2-P0-002/parity-map.json", "sha256": "a60a77cae000941a953d55adbf93d8f6e275533891713d6eae993f60faed94e8", "total": 6900, "legacyCompleted": 281, "legacyPending": 6618, "effectiveCompleted": 290, "effectivePending": 6609, "mutation": "forbidden_by_module_execution" }, "dynamic": { "path": "tests/golden/WBV2/dynamic-inventory.json", "sha256": "23c3096b5b6552976d994c1f7df4b4a869fa85f6d04166447b0a74b425cff6b3", "sourceTreeSha256": "600cb3dd441f09d9655b740735fbf8fa49ad6c14d308c68d59a29f9c338e4202", "unitCount": 3745, "planningEstimate": 5200, "hardTarget": false, "verifiedUnits": 1084, "unverifiedUnits": 2661 } }, "nextTask": null }