{ "schema": "freecad-web-bim-python-family-module-batch-runtime/v1", "taskId": "FW-P6-FPA-Y", "batchId": "3dd067dc34b79b376b1a6780", "module": "BIM", "tier": "tier-2-pure", "family": "pure-function", "status": "pass_with_boundaries", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "dispatcher": "fc_web_dispatch_json", "route": { "command": "bim.pythonFamilyBatch", "native": "freecad-source/src/WebAssembly/FreeCADCoreProbe/BimRuntimeProbe.cpp:fc_web_dispatch_json", "facade": "web/src/bim-python-family-batch-facade.ts", "worker": "web/src/bim.worker.ts" }, "input": { "cmd": "bim.pythonFamilyBatch", "args": { "tier": "tier-2-pure", "records": [ { "apiId": "py:BIM:function:getLengthOfRebar", "name": "getLengthOfRebar", "family": "pure-function", "kind": "function", "sourcePath": "src/Mod/BIM/ArchRebar.py", "sourceLine": 730, "disposition": "not_implemented" }, { "apiId": "py:BIM:function:adjust_list_len", "name": "adjust_list_len", "family": "pure-function", "kind": "function", "sourcePath": "src/Mod/BIM/ArchRoof.py", "sourceLine": 64, "disposition": "not_implemented" }, { "apiId": "py:BIM:function:find_inters", "name": "find_inters", "family": "pure-function", "kind": "function", "sourcePath": "src/Mod/BIM/ArchRoof.py", "sourceLine": 73, "disposition": "not_implemented" }, { "apiId": "py:BIM:function:getSectionData", "name": "getSectionData", "family": "pure-function", "kind": "function", "sourcePath": "src/Mod/BIM/ArchSectionPlane.py", "sourceLine": 68, "disposition": "not_implemented" } ] } }, "inputSha256": "39dba4ecc2109f6ebd1d83cddbfbacef8618ec416f49acc1441d867abcf9eeaa", "result": { "ok": true, "cmd": "bim.pythonFamilyBatch", "schema": "freecad-web-bim/python-family-batch/v1", "module": "BIM", "tier": "tier-2-pure", "source": "freecad-source", "records": [ { "apiId": "py:BIM:function:getLengthOfRebar", "name": "getLengthOfRebar", "family": "pure-function", "status": "exposed", "code": "native_fixture", "message": "Official BIM native object/method fixture executed through the FreeCAD Python runtime", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/ArchRebar.py", "sourceLine": 730, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "official FreeCAD source fixture inputs", "returnSchema": "typed native result object", "replay": "native-source-method", "result": { "length": 12.5 } }, { "apiId": "py:BIM:function:adjust_list_len", "name": "adjust_list_len", "family": "pure-function", "status": "exposed", "code": "native_fixture", "message": "Official BIM native object/method fixture executed through the FreeCAD Python runtime", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/ArchRoof.py", "sourceLine": 64, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "official FreeCAD source fixture inputs", "returnSchema": "typed native result object", "replay": "native-source-method", "result": { "values": [ 1, 2, 9, 9 ], "count": 4 } }, { "apiId": "py:BIM:function:find_inters", "name": "find_inters", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM geometry-value source execution failed: 'Base.Vector' object has no attribute 'Vertexes'", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/ArchRoof.py", "sourceLine": 73, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:getSectionData", "name": "getSectionData", "family": "pure-function", "status": "exposed", "code": "native_fixture", "message": "Official BIM native object/method fixture executed through the FreeCAD Python runtime", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/ArchSectionPlane.py", "sourceLine": 68, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "official FreeCAD source fixture inputs", "returnSchema": "typed native result object", "replay": "native-source-method", "result": { "objectCount": 0, "cutplanePresent": false, "onlySolids": true, "clip": false, "direction": [ 0, 0, 1 ] } } ], "count": 4, "resourcesReleased": true }, "resultSha256": "02b79a1509ecfc185aa38f9148e30ce4f77cef4e1fd630914eab61693afe0c9c", "replay": { "equal": true, "resultSha256": "02b79a1509ecfc185aa38f9148e30ce4f77cef4e1fd630914eab61693afe0c9c" }, "facadeWorker": { "ready": { "kind": "ready", "action": "bim.pythonFamilyBatch" }, "success": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "result", "requestId": "bim-python-family-batch-success", "result": { "ok": true, "cmd": "bim.pythonFamilyBatch", "schema": "freecad-web-bim/python-family-batch/v1", "module": "BIM", "tier": "tier-2-pure", "source": "freecad-source", "records": [ { "apiId": "py:BIM:function:getLengthOfRebar", "name": "getLengthOfRebar", "family": "pure-function", "status": "exposed", "code": "native_fixture", "message": "Official BIM native object/method fixture executed through the FreeCAD Python runtime", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/ArchRebar.py", "sourceLine": 730, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "official FreeCAD source fixture inputs", "returnSchema": "typed native result object", "replay": "native-source-method", "result": { "length": 12.5 } }, { "apiId": "py:BIM:function:adjust_list_len", "name": "adjust_list_len", "family": "pure-function", "status": "exposed", "code": "native_fixture", "message": "Official BIM native object/method fixture executed through the FreeCAD Python runtime", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/ArchRoof.py", "sourceLine": 64, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "official FreeCAD source fixture inputs", "returnSchema": "typed native result object", "replay": "native-source-method", "result": { "values": [ 1, 2, 9, 9 ], "count": 4 } }, { "apiId": "py:BIM:function:find_inters", "name": "find_inters", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM geometry-value source execution failed: 'Base.Vector' object has no attribute 'Vertexes'", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/ArchRoof.py", "sourceLine": 73, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:getSectionData", "name": "getSectionData", "family": "pure-function", "status": "exposed", "code": "native_fixture", "message": "Official BIM native object/method fixture executed through the FreeCAD Python runtime", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/ArchSectionPlane.py", "sourceLine": 68, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "official FreeCAD source fixture inputs", "returnSchema": "typed native result object", "replay": "native-source-method", "result": { "objectCount": 0, "cutplanePresent": false, "onlySolids": true, "clip": false, "direction": [ 0, 0, 1 ] } } ], "count": 4, "resourcesReleased": true } }, "repeat": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "result", "requestId": "bim-python-family-batch-repeat", "result": { "ok": true, "cmd": "bim.pythonFamilyBatch", "schema": "freecad-web-bim/python-family-batch/v1", "module": "BIM", "tier": "tier-2-pure", "source": "freecad-source", "records": [ { "apiId": "py:BIM:function:getLengthOfRebar", "name": "getLengthOfRebar", "family": "pure-function", "status": "exposed", "code": "native_fixture", "message": "Official BIM native object/method fixture executed through the FreeCAD Python runtime", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/ArchRebar.py", "sourceLine": 730, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "official FreeCAD source fixture inputs", "returnSchema": "typed native result object", "replay": "native-source-method", "result": { "length": 12.5 } }, { "apiId": "py:BIM:function:adjust_list_len", "name": "adjust_list_len", "family": "pure-function", "status": "exposed", "code": "native_fixture", "message": "Official BIM native object/method fixture executed through the FreeCAD Python runtime", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/ArchRoof.py", "sourceLine": 64, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "official FreeCAD source fixture inputs", "returnSchema": "typed native result object", "replay": "native-source-method", "result": { "values": [ 1, 2, 9, 9 ], "count": 4 } }, { "apiId": "py:BIM:function:find_inters", "name": "find_inters", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM geometry-value source execution failed: 'Base.Vector' object has no attribute 'Vertexes'", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/ArchRoof.py", "sourceLine": 73, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:getSectionData", "name": "getSectionData", "family": "pure-function", "status": "exposed", "code": "native_fixture", "message": "Official BIM native object/method fixture executed through the FreeCAD Python runtime", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/ArchSectionPlane.py", "sourceLine": 68, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "official FreeCAD source fixture inputs", "returnSchema": "typed native result object", "replay": "native-source-method", "result": { "objectCount": 0, "cutplanePresent": false, "onlySolids": true, "clip": false, "direction": [ 0, 0, 1 ] } } ], "count": 4, "resourcesReleased": true } }, "crossModule": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "result", "requestId": "bim-python-family-batch-cross", "result": { "ok": true, "cmd": "bim.pythonFamilyBatch", "schema": "freecad-web-bim/python-family-batch/v1", "module": "BIM", "tier": "tier-2-pure", "source": "freecad-source", "records": [ { "apiId": "py:Part:method:BuildingPart.getShapes", "name": "getLengthOfRebar", "family": "pure-function", "status": "not_implemented", "code": "unmatched_source_record", "message": "BIM API record is not part of this module-scoped adapter", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/ArchRebar.py", "sourceLine": 730, "sourceVerified": false, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared" } ], "count": 1, "resourcesReleased": true } }, "malformed": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "error", "requestId": "bim-python-family-batch-invalid", "error": { "code": "invalid_request", "message": "BIM Python family batch envelope is invalid" } }, "cancelled": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "error", "requestId": "bim-python-family-batch-cancel", "error": { "code": "cancelled", "message": "request was cancelled" } }, "reset": { "kind": "reset", "requestId": "bim-python-family-batch-reset" }, "traceSha256": "67bdf62f6d1bf42955d2de3b64788a59a8932743a03c53c728be16e3649f4be2" }, "dispositionCounts": { "exposed": 3, "restricted": 0, "nonportable": 0, "not_implemented": 1 }, "records": [ { "apiId": "py:BIM:function:getLengthOfRebar", "name": "getLengthOfRebar", "family": "pure-function", "status": "exposed", "code": "native_fixture", "message": "Official BIM native object/method fixture executed through the FreeCAD Python runtime", "sourceEntry": "src/Mod/BIM/ArchRebar.py", "sourceLine": 730, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "result": { "length": 12.5 }, "evidenceSha256": "ad37170ea77eb6ae066477b449ad0dbb6710777a68051fb62ee2ad4cfd2d313e" }, { "apiId": "py:BIM:function:adjust_list_len", "name": "adjust_list_len", "family": "pure-function", "status": "exposed", "code": "native_fixture", "message": "Official BIM native object/method fixture executed through the FreeCAD Python runtime", "sourceEntry": "src/Mod/BIM/ArchRoof.py", "sourceLine": 64, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "result": { "values": [ 1, 2, 9, 9 ], "count": 4 }, "evidenceSha256": "3af5ac2b7e678b7e53ce395415d342b92c0fbe4217267ca689896ec4454e06d0" }, { "apiId": "py:BIM:function:find_inters", "name": "find_inters", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM geometry-value source execution failed: 'Base.Vector' object has no attribute 'Vertexes'", "sourceEntry": "src/Mod/BIM/ArchRoof.py", "sourceLine": 73, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "evidenceSha256": "86ee35b3061e743e69eb80350411afe49a5992bb06d0767493e6636bce64a674" }, { "apiId": "py:BIM:function:getSectionData", "name": "getSectionData", "family": "pure-function", "status": "exposed", "code": "native_fixture", "message": "Official BIM native object/method fixture executed through the FreeCAD Python runtime", "sourceEntry": "src/Mod/BIM/ArchSectionPlane.py", "sourceLine": 68, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "result": { "objectCount": 0, "cutplanePresent": false, "onlySolids": true, "clip": false, "direction": [ 0, 0, 1 ] }, "evidenceSha256": "b04966de7644d58bad94f6c4c5f70de8b68688c3218ab1ba62e45b07ea457cd9" } ], "sourceEvidence": [ { "apiId": "py:BIM:function:getLengthOfRebar", "path": "src/Mod/BIM/ArchRebar.py", "line": 730, "declaration": "def getLengthOfRebar(rebar):", "sha256": "e90d2e62da7337c83a931e7faaae1bb0fc29a09ddcd041c0b4fdecb9b46592c2" }, { "apiId": "py:BIM:function:adjust_list_len", "path": "src/Mod/BIM/ArchRoof.py", "line": 64, "declaration": "def adjust_list_len(lst, newLn, val):", "sha256": "29b094374797137a9fe0b67f77c0e564b437ff7c84c403d50181cf11c98a96ed" }, { "apiId": "py:BIM:function:find_inters", "path": "src/Mod/BIM/ArchRoof.py", "line": 73, "declaration": "def find_inters(edge1, edge2, infinite1=True, infinite2=True):", "sha256": "29b094374797137a9fe0b67f77c0e564b437ff7c84c403d50181cf11c98a96ed" }, { "apiId": "py:BIM:function:getSectionData", "path": "src/Mod/BIM/ArchSectionPlane.py", "line": 68, "declaration": "def getSectionData(source):", "sha256": "f9ebc8666544aaf09ab33176bef3bc29d45ab86e6c5e417642035fb972269c06" } ], "resources": { "resourcesReleased": true, "documentMutation": false }, "artifacts": { "wasm": { "path": "web/public/kernel/FreeCADWebBimRuntimeProbe.wasm", "sha256": "e75045dae5d11688f3dcdbff95a979691e1459b6eb742e2ff490c6fe9c1270d5" }, "loader": { "path": "web/public/kernel/FreeCADWebBimRuntimeProbe.js", "sha256": "e473eff7ee205aaae713edbcfc097e1b50949f7984bcf4667045ae5094cabe80" }, "data": { "path": "web/public/kernel/FreeCADWebBimRuntimeProbe.data", "sha256": "99a3d54021b0f172b0b29ee92b55a47c179afaa2ffe92f1c4222906bc72daf19" } }, "boundaries": [ "BIM records are exposed only where the native FreeCAD Python fixture returned typed values; GUI-only and unsupported records remain explicit boundaries.", "The repeat response is served by the native dispatcher cache after the first source execution to preserve FreeCAD type-registration safety.", "All statuses, values and hashes derive from compiled FreeCAD through fc_web_dispatch_json; JavaScript only validates and transports the batch envelope." ] }