{ "schema": "freecad-web-bim-python-family-module-batch-runtime/v1", "taskId": "FW-P6-FPA-Y", "batchId": "6b34d81ceba1cf8d964175c8", "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:getRotation", "name": "getRotation", "family": "pure-function", "kind": "function", "sourcePath": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 723, "disposition": "not_implemented" }, { "apiId": "py:BIM:function:getPlacement", "name": "getPlacement", "family": "pure-function", "kind": "function", "sourcePath": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 734, "disposition": "not_implemented" }, { "apiId": "py:BIM:function:isRectangle", "name": "isRectangle", "family": "pure-function", "kind": "function", "sourcePath": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 972, "disposition": "not_implemented" }, { "apiId": "py:BIM:function:applyColorDict", "name": "applyColorDict", "family": "pure-function", "kind": "function", "sourcePath": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 1089, "disposition": "not_implemented" }, { "apiId": "py:BIM:function:createAnnotation", "name": "createAnnotation", "family": "pure-function", "kind": "function", "sourcePath": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 1124, "disposition": "not_implemented" }, { "apiId": "py:BIM:function:getConfig", "name": "getConfig", "family": "pure-function", "kind": "function", "sourcePath": "src/Mod/BIM/importers/importIFClegacy.py", "sourceLine": 128, "disposition": "not_implemented" }, { "apiId": "py:BIM:function:getIfcOpenShell", "name": "getIfcOpenShell", "family": "pure-function", "kind": "function", "sourcePath": "src/Mod/BIM/importers/importIFClegacy.py", "sourceLine": 149, "disposition": "not_implemented" } ] } }, "inputSha256": "0980b5849517ac7d01cf689e1aacc118fc34d61530ac7d62db9b52f5f84de944", "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:getRotation", "name": "getRotation", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 723, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:getPlacement", "name": "getPlacement", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 734, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:isRectangle", "name": "isRectangle", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 972, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:applyColorDict", "name": "applyColorDict", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 1089, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:createAnnotation", "name": "createAnnotation", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 1124, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:getConfig", "name": "getConfig", "family": "pure-function", "status": "not_implemented", "code": "source_record_mismatch", "message": "BIM API declaration was not found at the requested line in the staged official source", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFClegacy.py", "sourceLine": 128, "sourceVerified": false, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:getIfcOpenShell", "name": "getIfcOpenShell", "family": "pure-function", "status": "not_implemented", "code": "source_record_mismatch", "message": "BIM API declaration was not found at the requested line in the staged official source", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFClegacy.py", "sourceLine": 149, "sourceVerified": false, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" } ], "count": 7, "resourcesReleased": true }, "resultSha256": "157b6e920c86528262aec9a612ce2669b851c849277e879633bedaff313efbb9", "replay": { "equal": true, "resultSha256": "157b6e920c86528262aec9a612ce2669b851c849277e879633bedaff313efbb9" }, "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:getRotation", "name": "getRotation", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 723, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:getPlacement", "name": "getPlacement", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 734, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:isRectangle", "name": "isRectangle", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 972, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:applyColorDict", "name": "applyColorDict", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 1089, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:createAnnotation", "name": "createAnnotation", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 1124, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:getConfig", "name": "getConfig", "family": "pure-function", "status": "not_implemented", "code": "source_record_mismatch", "message": "BIM API declaration was not found at the requested line in the staged official source", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFClegacy.py", "sourceLine": 128, "sourceVerified": false, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:getIfcOpenShell", "name": "getIfcOpenShell", "family": "pure-function", "status": "not_implemented", "code": "source_record_mismatch", "message": "BIM API declaration was not found at the requested line in the staged official source", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFClegacy.py", "sourceLine": 149, "sourceVerified": false, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" } ], "count": 7, "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:getRotation", "name": "getRotation", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 723, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:getPlacement", "name": "getPlacement", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 734, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:isRectangle", "name": "isRectangle", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 972, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:applyColorDict", "name": "applyColorDict", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 1089, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:createAnnotation", "name": "createAnnotation", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 1124, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:getConfig", "name": "getConfig", "family": "pure-function", "status": "not_implemented", "code": "source_record_mismatch", "message": "BIM API declaration was not found at the requested line in the staged official source", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFClegacy.py", "sourceLine": 128, "sourceVerified": false, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" }, { "apiId": "py:BIM:function:getIfcOpenShell", "name": "getIfcOpenShell", "family": "pure-function", "status": "not_implemented", "code": "source_record_mismatch", "message": "BIM API declaration was not found at the requested line in the staged official source", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/BIM/importers/importIFClegacy.py", "sourceLine": 149, "sourceVerified": false, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "source-declared", "returnSchema": "source-declared", "replay": "native-source-disposition" } ], "count": 7, "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": "getRotation", "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/importers/importIFCHelper.py", "sourceLine": 723, "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": "a870d377448bc1d458e2c1880f011be87435bb988281e7dda589f0a9695ac1c2" }, "dispositionCounts": { "exposed": 0, "restricted": 0, "nonportable": 0, "not_implemented": 7 }, "records": [ { "apiId": "py:BIM:function:getRotation", "name": "getRotation", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 723, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "evidenceSha256": "930e6e6194df8b3469c010806f3eb963a316c9d63fea95de0ddd0bcad296551d" }, { "apiId": "py:BIM:function:getPlacement", "name": "getPlacement", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 734, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "evidenceSha256": "a89fa4f2ecba00c19598e1c7968cdb0316a5853b409547a967b677af903064b7" }, { "apiId": "py:BIM:function:isRectangle", "name": "isRectangle", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 972, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "evidenceSha256": "9a6dca573a0eade98436cca9772ccb2f178e076cec8c21134fc75ff4254f5718" }, { "apiId": "py:BIM:function:applyColorDict", "name": "applyColorDict", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 1089, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "evidenceSha256": "133744bb2c335f89bbe00f9d41178b296a30a20cbe47c888965a3207f17f5116" }, { "apiId": "py:BIM:function:createAnnotation", "name": "createAnnotation", "family": "pure-function", "status": "not_implemented", "code": "method_evidence_pending", "message": "BIM Python API has no method-level readonly native evidence", "sourceEntry": "src/Mod/BIM/importers/importIFCHelper.py", "sourceLine": 1124, "sourceVerified": true, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "evidenceSha256": "95596c07d8008c6738de0568ccc086df506048ff0ab98bde48850fe8175f0b27" }, { "apiId": "py:BIM:function:getConfig", "name": "getConfig", "family": "pure-function", "status": "not_implemented", "code": "source_record_mismatch", "message": "BIM API declaration was not found at the requested line in the staged official source", "sourceEntry": "src/Mod/BIM/importers/importIFClegacy.py", "sourceLine": 128, "sourceVerified": false, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "evidenceSha256": "e8ec27ad3a0a91a8af5a61e8f7d8f94cebb48c82eff23f017e320f1258ab7c6e" }, { "apiId": "py:BIM:function:getIfcOpenShell", "name": "getIfcOpenShell", "family": "pure-function", "status": "not_implemented", "code": "source_record_mismatch", "message": "BIM API declaration was not found at the requested line in the staged official source", "sourceEntry": "src/Mod/BIM/importers/importIFClegacy.py", "sourceLine": 149, "sourceVerified": false, "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "evidenceSha256": "33062c3399dc67aeac4f843078c96617a097f08f19f117612e7ce755e69110b6" } ], "sourceEvidence": [ { "apiId": "py:BIM:function:getRotation", "path": "src/Mod/BIM/importers/importIFCHelper.py", "line": 723, "declaration": "def getRotation(entity):", "sha256": "6a5bb19eb2dece6b4eb092bbeea42b0a6f8c2fdc543ed8f7e910540bc7faaf17" }, { "apiId": "py:BIM:function:getPlacement", "path": "src/Mod/BIM/importers/importIFCHelper.py", "line": 734, "declaration": "def getPlacement(entity, scaling=1000):", "sha256": "6a5bb19eb2dece6b4eb092bbeea42b0a6f8c2fdc543ed8f7e910540bc7faaf17" }, { "apiId": "py:BIM:function:isRectangle", "path": "src/Mod/BIM/importers/importIFCHelper.py", "line": 972, "declaration": "def isRectangle(verts):", "sha256": "6a5bb19eb2dece6b4eb092bbeea42b0a6f8c2fdc543ed8f7e910540bc7faaf17" }, { "apiId": "py:BIM:function:applyColorDict", "path": "src/Mod/BIM/importers/importIFCHelper.py", "line": 1089, "declaration": "def applyColorDict(doc, colordict=None):", "sha256": "6a5bb19eb2dece6b4eb092bbeea42b0a6f8c2fdc543ed8f7e910540bc7faaf17" }, { "apiId": "py:BIM:function:createAnnotation", "path": "src/Mod/BIM/importers/importIFCHelper.py", "line": 1124, "declaration": "def createAnnotation(annotation, doc, ifcscale, preferences):", "sha256": "6a5bb19eb2dece6b4eb092bbeea42b0a6f8c2fdc543ed8f7e910540bc7faaf17" }, { "apiId": "py:BIM:function:getConfig", "path": "src/Mod/BIM/importers/importIFClegacy.py", "line": 129, "declaration": "def getConfig():", "sha256": "dfb0daf9c8ec850e0ca25de5d1cdde685003a84139deea88ef161a2a728506c6" }, { "apiId": "py:BIM:function:getIfcOpenShell", "path": "src/Mod/BIM/importers/importIFClegacy.py", "line": 150, "declaration": "def getIfcOpenShell():", "sha256": "dfb0daf9c8ec850e0ca25de5d1cdde685003a84139deea88ef161a2a728506c6" } ], "resources": { "resourcesReleased": true, "documentMutation": false }, "artifacts": { "wasm": { "path": "web/public/kernel/FreeCADWebBimRuntimeProbe.wasm", "sha256": "388b0a9147f44500693327cd32313afd7b89812272027a29f44d40f4c0d582e2" }, "loader": { "path": "web/public/kernel/FreeCADWebBimRuntimeProbe.js", "sha256": "269edc966923bf61f132981211b4a7920494a48e3116cad3949b88ab3670172a" }, "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." ] }