155 lines
7.3 KiB
JSON
155 lines
7.3 KiB
JSON
{
|
|
"schemaVersion": 1,
|
|
"task": "WBV2-P1214-001",
|
|
"operation": "MODULE_FUNCTION_EXECUTION",
|
|
"phase": "CONTINUE",
|
|
"moduleId": "AUTO_GEOMETRY_NATIVE_NODE_READER",
|
|
"batchId": "WBV2-P1214-001:AUTO_GEOMETRY_NATIVE_NODE_READER:7d31b4b0866780ae",
|
|
"selectedRecordIds": [
|
|
"node:FunctionNodeInvertMatrix",
|
|
"node:FunctionNodeInvertRotation",
|
|
"node:FunctionNodeMatchString",
|
|
"node:FunctionNodeMatrixDeterminant",
|
|
"node:FunctionNodeMatrixMultiply"
|
|
],
|
|
"commandBudget": {
|
|
"maxCommands": 48,
|
|
"maxReadCommands": 16,
|
|
"commandCount": 4,
|
|
"readCommandCount": 0,
|
|
"withinBudget": true
|
|
},
|
|
"status": "PASS",
|
|
"source": {
|
|
"paths": [
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_invert_matrix.cc",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_invert_rotation.cc",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_match_string.cc",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_matrix_determinant.cc",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_matrix_multiply.cc",
|
|
"blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp",
|
|
"web/tests/e2e/geometry-node-main-reader.spec.ts",
|
|
"tests/files/web/generated/wbv2-geometry-7d31b4b0866780ae.blend",
|
|
"web/app/src/vendor/blender/web_engine.wasm"
|
|
],
|
|
"auditedPaths": [
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_invert_matrix.cc",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_invert_rotation.cc",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_match_string.cc",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_matrix_determinant.cc",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_matrix_multiply.cc",
|
|
"blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp"
|
|
],
|
|
"before": {
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_invert_matrix.cc": "dc85972e9e1d372006a4eb3a4fa1d6b5871d4a6730cc1e5b07c250f7caf017f2",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_invert_rotation.cc": "6857d4f9636bc024737ee2a260424626a1109aed4889c9640e2a3b5c2b808a6c",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_match_string.cc": "c14b5ab950e492efa487f3e2a7c6698e2a0f46fa3e3ecc4967f8a70f6c56d4a7",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_matrix_determinant.cc": "99965d7a7885bacd011d0c6c997bdbbcf5633edd94dd3830da7d4c133d8e9743",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_matrix_multiply.cc": "206ac9541b178c35241a86c973ab47e68c48714c08e311272721cbcef842ae8a",
|
|
"blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp": "8a9b46e8f5f9c4b30ad7818fac6fbd64b20dc2d0a962630f50c8f352bdf230d3"
|
|
},
|
|
"after": {
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_invert_matrix.cc": "dc85972e9e1d372006a4eb3a4fa1d6b5871d4a6730cc1e5b07c250f7caf017f2",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_invert_rotation.cc": "6857d4f9636bc024737ee2a260424626a1109aed4889c9640e2a3b5c2b808a6c",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_match_string.cc": "c14b5ab950e492efa487f3e2a7c6698e2a0f46fa3e3ecc4967f8a70f6c56d4a7",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_matrix_determinant.cc": "99965d7a7885bacd011d0c6c997bdbbcf5633edd94dd3830da7d4c133d8e9743",
|
|
"blender-5.2.0/source/blender/nodes/function/nodes/node_fn_matrix_multiply.cc": "206ac9541b178c35241a86c973ab47e68c48714c08e311272721cbcef842ae8a",
|
|
"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": [
|
|
"FunctionNodeInvertMatrix type is read from Blender Main",
|
|
"FunctionNodeInvertRotation type is read from Blender Main",
|
|
"FunctionNodeMatchString type is read from Blender Main",
|
|
"FunctionNodeMatrixDeterminant type is read from Blender Main",
|
|
"FunctionNodeMatrixMultiply 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": 154
|
|
},
|
|
{
|
|
"command": "npm --prefix web run typecheck",
|
|
"exitCode": 0,
|
|
"durationMs": 3364
|
|
},
|
|
{
|
|
"command": "npm --prefix web run build",
|
|
"exitCode": 0,
|
|
"durationMs": 3925
|
|
},
|
|
{
|
|
"command": "WBV2_BATCH_TASK=WBV2-P1214-001 WBV2_BATCH_PRODUCTION=tests/golden/WBV2-P1214-001/geometry-node-reader-production.json WBV2_BATCH_FIXTURE=tests/files/web/generated/wbv2-geometry-7d31b4b0866780ae.blend WBV2_BATCH_TYPES='[\"FunctionNodeInvertMatrix\",\"FunctionNodeInvertRotation\",\"FunctionNodeMatchString\",\"FunctionNodeMatrixDeterminant\",\"FunctionNodeMatrixMultiply\"]' WBV2_BATCH_UNITS='[\"node:FunctionNodeInvertMatrix\",\"node:FunctionNodeInvertRotation\",\"node:FunctionNodeMatchString\",\"node:FunctionNodeMatrixDeterminant\",\"node:FunctionNodeMatrixMultiply\"]' WEB_TEST_PORT=5371 npm --prefix web run test:e2e -- --workers=1 tests/e2e/geometry-node-main-reader.spec.ts",
|
|
"exitCode": 0,
|
|
"durationMs": 2632
|
|
}
|
|
],
|
|
"verification": {
|
|
"required": [
|
|
"sourceHash",
|
|
"wasmBuild",
|
|
"positiveMainMutation",
|
|
"negativeNoMutation",
|
|
"undoRedo",
|
|
"saveReopen",
|
|
"aggregateManifest"
|
|
],
|
|
"chromiumOnly": true,
|
|
"fullFamilyParity": false
|
|
},
|
|
"efficiency": {
|
|
"existingEvidenceReused": false,
|
|
"skippedCommands": 0,
|
|
"totalDurationMs": 10075,
|
|
"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": "519498ebca0837ab9a773d81dffec772b1d84f12b32a7c5a349d6a09245a9692",
|
|
"sourceTreeSha256": "600cb3dd441f09d9655b740735fbf8fa49ad6c14d308c68d59a29f9c338e4202",
|
|
"unitCount": 3745,
|
|
"planningEstimate": 5200,
|
|
"hardTarget": false,
|
|
"verifiedUnits": 748,
|
|
"unverifiedUnits": 2997
|
|
}
|
|
},
|
|
"nextTask": null
|
|
}
|