{ "schema": "freecad-web-p6-material-string2tuple-method-runtime/v1", "taskId": "FW-P6-FPA-Y", "module": "Material", "tier": "tier-2-pure", "apiId": "py:Material:function:string2tuple", "status": "pass", "route": { "command": "material.pythonFamilyBatch", "worker": "web/src/material.worker.ts", "facade": "web/src/material-python-family-facade.ts", "native": "freecad-source/src/WebAssembly/FreeCADCoreProbe/MaterialKernelProbe.cpp:fc_web_dispatch_json" }, "source": { "entry": "src/Mod/Material/MaterialEditor.py", "line": 948, "revision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "function": "string2tuple", "guiImportBoundary": "the official function definition is extracted without executing MaterialEditor GUI imports" }, "request": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "request", "requestId": "material-string2tuple-success", "command": "material.pythonFamilyBatch", "payload": { "schema": "freecad-web-material/python-family-batch/v1", "module": "Material", "tier": "tier-2-pure", "records": [ { "apiId": "py:Material:function:string2tuple", "name": "string2tuple", "family": "pure-function", "kind": "function", "sourcePath": "src/Mod/Material/MaterialEditor.py", "disposition": "not_implemented", "args": { "value": "(0.1,0.2,0.3,1.0)" } } ] }, "documentId": "material-python-family" }, "requestSha256": "ce6b1c3223f2168841cb4e93238eaef6939da0ed89ab873ccc54a321ca43f4f0", "trace": { "success": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "result", "requestId": "material-string2tuple-success", "result": { "cmd": "material.pythonFamilyBatch", "count": 1, "module": "Material", "ok": true, "records": [ { "apiId": "py:Material:function:string2tuple", "code": "native_python_method", "family": "pure-function", "message": "Material string2tuple was executed from the official FreeCAD source", "name": "string2tuple", "native": true, "parameterSchema": "value:string", "resourcesReleased": true, "result": [ 25, 51, 76, 255 ], "returnSchema": "tuple[int,int,int,int]", "sourceEntry": "src/Mod/Material/MaterialEditor.py", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "status": "exposed" } ], "resourcesReleased": true, "schema": "freecad-web-material/python-family-batch/v1", "source": "freecad-source", "tier": "tier-2-pure" } }, "repeat": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "result", "requestId": "material-string2tuple-repeat", "result": { "cmd": "material.pythonFamilyBatch", "count": 1, "module": "Material", "ok": true, "records": [ { "apiId": "py:Material:function:string2tuple", "code": "native_python_method", "family": "pure-function", "message": "Material string2tuple was executed from the official FreeCAD source", "name": "string2tuple", "native": true, "parameterSchema": "value:string", "resourcesReleased": true, "result": [ 25, 51, 76, 255 ], "returnSchema": "tuple[int,int,int,int]", "sourceEntry": "src/Mod/Material/MaterialEditor.py", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "status": "exposed" } ], "resourcesReleased": true, "schema": "freecad-web-material/python-family-batch/v1", "source": "freecad-source", "tier": "tier-2-pure" } }, "malformed": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "error", "requestId": "material-string2tuple-malformed", "error": { "code": "invalid_request", "message": "Material Python family envelope invalid" } }, "invalid": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "result", "requestId": "material-string2tuple-invalid", "result": { "cmd": "material.pythonFamilyBatch", "count": 1, "module": "Material", "ok": true, "records": [ { "apiId": "py:Material:function:string2tuple", "code": "source_error", "family": "pure-function", "message": "Material string2tuple source fixture failed", "name": "string2tuple", "native": true, "parameterSchema": "source-declared", "resourcesReleased": true, "returnSchema": "source-declared", "sourceEntry": "src/Mod/Material/MaterialEditor.py", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "status": "not_implemented" } ], "resourcesReleased": true, "schema": "freecad-web-material/python-family-batch/v1", "source": "freecad-source", "tier": "tier-2-pure" } }, "duplicate": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "error", "requestId": "material-string2tuple-duplicate", "error": { "code": "duplicate_request", "message": "requestId has already been dispatched" } }, "duplicateResult": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "result", "requestId": "material-string2tuple-duplicate", "result": { "cmd": "material.pythonFamilyBatch", "count": 1, "module": "Material", "ok": true, "records": [ { "apiId": "py:Material:function:string2tuple", "code": "native_python_method", "family": "pure-function", "message": "Material string2tuple was executed from the official FreeCAD source", "name": "string2tuple", "native": true, "parameterSchema": "value:string", "resourcesReleased": true, "result": [ 25, 51, 76, 255 ], "returnSchema": "tuple[int,int,int,int]", "sourceEntry": "src/Mod/Material/MaterialEditor.py", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "status": "exposed" } ], "resourcesReleased": true, "schema": "freecad-web-material/python-family-batch/v1", "source": "freecad-source", "tier": "tier-2-pure" } }, "cancelled": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "error", "requestId": "material-string2tuple-cancel", "error": { "code": "cancelled", "message": "request was cancelled before execution" } }, "direct": { "cmd": "material.pythonFamilyBatch", "count": 1, "module": "Material", "ok": true, "records": [ { "apiId": "py:Material:function:string2tuple", "code": "native_python_method", "family": "pure-function", "message": "Material string2tuple was executed from the official FreeCAD source", "name": "string2tuple", "native": true, "parameterSchema": "value:string", "resourcesReleased": true, "result": [ 25, 51, 76, 255 ], "returnSchema": "tuple[int,int,int,int]", "sourceEntry": "src/Mod/Material/MaterialEditor.py", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "status": "exposed" } ], "resourcesReleased": true, "schema": "freecad-web-material/python-family-batch/v1", "source": "freecad-source", "tier": "tier-2-pure" }, "directRepeat": { "cmd": "material.pythonFamilyBatch", "count": 1, "module": "Material", "ok": true, "records": [ { "apiId": "py:Material:function:string2tuple", "code": "native_python_method", "family": "pure-function", "message": "Material string2tuple was executed from the official FreeCAD source", "name": "string2tuple", "native": true, "parameterSchema": "value:string", "resourcesReleased": true, "result": [ 25, 51, 76, 255 ], "returnSchema": "tuple[int,int,int,int]", "sourceEntry": "src/Mod/Material/MaterialEditor.py", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "status": "exposed" } ], "resourcesReleased": true, "schema": "freecad-web-material/python-family-batch/v1", "source": "freecad-source", "tier": "tier-2-pure" }, "crossModule": { "cmd": "material.pythonFamilyBatch", "count": 1, "module": "Material", "ok": true, "records": [ { "apiId": "py:Part:function:string2tuple", "code": "unmatched_source_record", "family": "pure-function", "message": "Material API record is not part of this module-scoped adapter", "name": "string2tuple", "native": true, "parameterSchema": "unmatched", "resourcesReleased": true, "returnSchema": "unmatched", "sourceEntry": "src/Mod/Material/MaterialEditor.py", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "status": "not_implemented" } ], "resourcesReleased": true, "schema": "freecad-web-material/python-family-batch/v1", "source": "freecad-source", "tier": "tier-2-pure" }, "unsupported": { "ok": false, "code": "unsupported_command", "error": "Material native dispatch command is not registered" } }, "traceSha256": "afc25c49ad70cf13c99bb21bdcf2d3b5774e06934caf154bac6002147116af39", "worker": { "trace": { "ready": { "kind": "ready", "action": "material.pythonFamilyBatch" }, "success": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "result", "requestId": "material-string2tuple-success", "result": { "cmd": "material.pythonFamilyBatch", "count": 1, "module": "Material", "ok": true, "records": [ { "apiId": "py:Material:function:string2tuple", "code": "native_python_method", "family": "pure-function", "message": "Material string2tuple was executed from the official FreeCAD source", "name": "string2tuple", "native": true, "parameterSchema": "value:string", "resourcesReleased": true, "result": [ 25, 51, 76, 255 ], "returnSchema": "tuple[int,int,int,int]", "sourceEntry": "src/Mod/Material/MaterialEditor.py", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "status": "exposed" } ], "resourcesReleased": true, "schema": "freecad-web-material/python-family-batch/v1", "source": "freecad-source", "tier": "tier-2-pure" } }, "duplicate": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "error", "requestId": "material-string2tuple-success", "error": { "code": "duplicate_request", "message": "requestId has already been dispatched" } }, "cancelled": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "error", "requestId": "material-string2tuple-worker-cancel", "error": { "code": "cancelled", "message": "request was cancelled" } }, "reset": { "kind": "reset", "requestId": "material-string2tuple-worker-reset" } }, "traceSha256": "63d6ad884f3c77ee0942ac9eab4dd27c334231b07933ee83d7a72fffc2a909f2", "sequencing": { "duplicate": true, "cancelAccepted": true, "resetAccepted": true, "maxActive": 1 } }, "replay": { "equal": true, "resultSha256": "c16008af2c68f6661f9c1cfdf78cda4d3b5f99114e742fc9bb30db5d0b1bafc7" }, "resources": { "resourcesReleased": true, "documentMutation": false }, "artifacts": { "wasm": { "path": "web/public/kernel/FreeCADWebMaterialKernelProbe.wasm", "sha256": "a6219b9e4df6d494a4fe6d7d5f40634bf8224bdfaef1f06d8cb84ddcaa4c4f2b" }, "loader": { "path": "web/public/kernel/FreeCADWebMaterialKernelProbe.js", "sha256": "410ed9fd657a14c55eec28799dc83c672a4227321f9095805fc724e195ed95eb" } }, "commands": [ "ninja -C freecad-source/build-web/configure FreeCADWebMaterialKernelProbe -j8", "cp FreeCADWebMaterialKernelProbe.js/.wasm web/public/kernel/", "node tools/run_p6_material_string2tuple_method_gate.mjs freecad-source/build-web/configure/bin" ], "boundaries": [ "MaterialEditor top-level Qt/FreeCADGui imports and editor UI remain headless boundaries; only the official pure function definition is executed.", "All result fields and statuses derive from compiled FreeCAD through fc_web_dispatch_json; no JavaScript API result is substituted." ], "resultSha256": "237e8720743d1fa28cd16faea7f1c339b2a37faba5baa0d9fe756bd7ac307923" }