155 lines
7.1 KiB
JSON
155 lines
7.1 KiB
JSON
{
|
|
"schemaVersion": 1,
|
|
"task": "WBV2-P1254-001",
|
|
"operation": "MODULE_FUNCTION_EXECUTION",
|
|
"phase": "CONTINUE",
|
|
"moduleId": "AUTO_SHADER_NATIVE_NODE_READER",
|
|
"batchId": "WBV2-P1254-001:AUTO_SHADER_NATIVE_NODE_READER:dbc531eb397b06df",
|
|
"selectedRecordIds": [
|
|
"node:ShaderNodeMixRGB",
|
|
"node:ShaderNodeMixShader",
|
|
"node:ShaderNodeNewGeometry",
|
|
"node:ShaderNodeNormal",
|
|
"node:ShaderNodeObjectInfo"
|
|
],
|
|
"commandBudget": {
|
|
"maxCommands": 48,
|
|
"maxReadCommands": 16,
|
|
"commandCount": 4,
|
|
"readCommandCount": 0,
|
|
"withinBudget": true
|
|
},
|
|
"status": "PASS",
|
|
"source": {
|
|
"paths": [
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_mix_rgb.cc",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_mix_shader.cc",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_geometry.cc",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_normal.cc",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_object_info.cc",
|
|
"blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp",
|
|
"web/tests/e2e/shader-main-reader-production.spec.ts",
|
|
"tests/files/web/generated/wbv2-shader-dbc531eb397b06df.blend",
|
|
"web/app/src/vendor/blender/web_engine.wasm"
|
|
],
|
|
"auditedPaths": [
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_mix_rgb.cc",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_mix_shader.cc",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_geometry.cc",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_normal.cc",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_object_info.cc",
|
|
"blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp"
|
|
],
|
|
"before": {
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_mix_rgb.cc": "0999cec917f2cdf3587e7123747855a0293db4c8742d12c04494373faf3e2b41",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_mix_shader.cc": "846896242a4c39b72d1186ef1a69b491a93e8cb23d403b50ed357864bc514f49",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_geometry.cc": "a2ba9694676f09d50714c5a3d4cfdfa2300f05919a03cba44733da3578d97bc3",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_normal.cc": "3538f51bb321a97881f57a29bfde882cc83418e7d7e915935edc2bf32b18ed5b",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_object_info.cc": "445cbb878a6a12d0276e6956795fd1c19be2679b7d62aa5529ef6e2e3e063e85",
|
|
"blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp": "8a9b46e8f5f9c4b30ad7818fac6fbd64b20dc2d0a962630f50c8f352bdf230d3"
|
|
},
|
|
"after": {
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_mix_rgb.cc": "0999cec917f2cdf3587e7123747855a0293db4c8742d12c04494373faf3e2b41",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_mix_shader.cc": "846896242a4c39b72d1186ef1a69b491a93e8cb23d403b50ed357864bc514f49",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_geometry.cc": "a2ba9694676f09d50714c5a3d4cfdfa2300f05919a03cba44733da3578d97bc3",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_normal.cc": "3538f51bb321a97881f57a29bfde882cc83418e7d7e915935edc2bf32b18ed5b",
|
|
"blender-5.2.0/source/blender/nodes/shader/nodes/node_shader_object_info.cc": "445cbb878a6a12d0276e6956795fd1c19be2679b7d62aa5529ef6e2e3e063e85",
|
|
"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": [
|
|
"ShaderNodeMixRGB type is read from Blender Main",
|
|
"ShaderNodeMixShader type is read from Blender Main",
|
|
"ShaderNodeNewGeometry type is read from Blender Main",
|
|
"ShaderNodeNormal type is read from Blender Main",
|
|
"ShaderNodeObjectInfo 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",
|
|
"exitCode": 0,
|
|
"durationMs": 150
|
|
},
|
|
{
|
|
"command": "npm --prefix web run typecheck",
|
|
"exitCode": 0,
|
|
"durationMs": 3322
|
|
},
|
|
{
|
|
"command": "npm --prefix web run build",
|
|
"exitCode": 0,
|
|
"durationMs": 3938
|
|
},
|
|
{
|
|
"command": "WBV2_BATCH_TASK=WBV2-P1254-001 WBV2_BATCH_PRODUCTION=tests/golden/WBV2-P1254-001/shader-main-reader-production.json WBV2_BATCH_FIXTURE=tests/files/web/generated/wbv2-shader-dbc531eb397b06df.blend WBV2_BATCH_TYPES='[\"ShaderNodeMixRGB\",\"ShaderNodeMixShader\",\"ShaderNodeNewGeometry\",\"ShaderNodeNormal\",\"ShaderNodeObjectInfo\"]' WBV2_BATCH_UNITS='[\"node:ShaderNodeMixRGB\",\"node:ShaderNodeMixShader\",\"node:ShaderNodeNewGeometry\",\"node:ShaderNodeNormal\",\"node:ShaderNodeObjectInfo\"]' WEB_TEST_PORT=5371 npm --prefix web run test:e2e -- --workers=1 tests/e2e/shader-main-reader-production.spec.ts",
|
|
"exitCode": 0,
|
|
"durationMs": 2849
|
|
}
|
|
],
|
|
"verification": {
|
|
"required": [
|
|
"sourceHash",
|
|
"wasmBuild",
|
|
"positiveMainMutation",
|
|
"negativeNoMutation",
|
|
"undoRedo",
|
|
"saveReopen",
|
|
"aggregateManifest"
|
|
],
|
|
"chromiumOnly": true,
|
|
"fullFamilyParity": false
|
|
},
|
|
"efficiency": {
|
|
"existingEvidenceReused": false,
|
|
"skippedCommands": 0,
|
|
"totalDurationMs": 10259,
|
|
"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": "72b86635ce52a0421d2a0ab5b173880ef69187ea9aca98680c373c031b71371f",
|
|
"sourceTreeSha256": "600cb3dd441f09d9655b740735fbf8fa49ad6c14d308c68d59a29f9c338e4202",
|
|
"unitCount": 3745,
|
|
"planningEstimate": 5200,
|
|
"hardTarget": false,
|
|
"verifiedUnits": 944,
|
|
"unverifiedUnits": 2801
|
|
}
|
|
},
|
|
"nextTask": null
|
|
}
|