{ "schema": "freecad-web-p6-surface-tier1-readonly-family-runtime/v1", "taskId": "FW-P6-FPA-F1-SURFACE", "module": "Surface", "tier": "tier-1-readonly", "status": "pass_with_restricted_and_pending", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "route": { "worker": "web/src/surface-python.worker.ts", "facade": "web/src/surface-python-family-facade.ts", "command": "surface.pythonFamilyBatch", "native": "freecad-source/src/WebAssembly/FreeCADCoreProbe/SurfaceFamilyProbe.cpp:fc_web_dispatch_json" }, "input": { "cmd": "surface.pythonFamilyBatch", "args": { "tier": "tier-1-readonly", "records": [ { "apiId": "py:Surface:class:BlendCurve", "name": "BlendCurve", "family": "geometry-value", "sourcePath": "src/Mod/Surface/App/Blending/BlendCurve.pyi", "disposition": "not_implemented" }, { "apiId": "py:Surface:class:BlendPoint", "name": "BlendPoint", "family": "geometry-value", "sourcePath": "src/Mod/Surface/App/Blending/BlendPoint.pyi", "disposition": "not_implemented" }, { "apiId": "py:Surface:class:SurfaceWorkbench", "name": "SurfaceWorkbench", "family": "geometry-value", "sourcePath": "src/Mod/Surface/InitGui.py", "disposition": "restricted" }, { "apiId": "py:Surface:method:BlendPoint.getSize", "name": "BlendPoint.getSize", "family": "generic-object", "sourcePath": "src/Mod/Surface/App/Blending/BlendPoint.pyi", "disposition": "not_implemented" } ] } }, "inputSha256": "b12221d8c917d394ee3bbb883a8c4c8d07e8049f6fdef7256d14c4407f6bb101", "result": { "cmd": "surface.pythonFamilyBatch", "count": 4, "module": "Surface", "ok": true, "records": [ { "apiId": "py:Surface:class:BlendCurve", "code": "method_evidence_pending", "family": "geometry-value", "message": "Surface Python symbol/method has no method-level native argument/return replay", "name": "BlendCurve", "native": true, "parameterSchema": "source-declared", "resourcesReleased": true, "returnSchema": "source-declared", "sourceEntry": "src/Mod/Surface/App/Blending/BlendCurve.pyi", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "status": "not_implemented" }, { "apiId": "py:Surface:class:BlendPoint", "code": "method_evidence_pending", "family": "geometry-value", "message": "Surface Python symbol/method has no method-level native argument/return replay", "name": "BlendPoint", "native": true, "parameterSchema": "source-declared", "resourcesReleased": true, "returnSchema": "source-declared", "sourceEntry": "src/Mod/Surface/App/Blending/BlendPoint.pyi", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "status": "not_implemented" }, { "apiId": "py:Surface:class:SurfaceWorkbench", "code": "gui_dependency_unavailable", "family": "geometry-value", "message": "Surface GUI/workbench API requires FreeCADGui unavailable in the headless Web runtime", "name": "SurfaceWorkbench", "native": true, "parameterSchema": "source-declared", "resourcesReleased": true, "returnSchema": "gui-resource", "sourceEntry": "src/Mod/Surface/InitGui.py", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "status": "restricted" }, { "apiId": "py:Surface:method:BlendPoint.getSize", "code": "method_evidence_pending", "family": "generic-object", "message": "Surface Python symbol/method has no method-level native argument/return replay", "name": "BlendPoint.getSize", "native": true, "parameterSchema": "source-declared", "resourcesReleased": true, "returnSchema": "source-declared", "sourceEntry": "src/Mod/Surface/App/Blending/BlendPoint.pyi", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "status": "not_implemented" } ], "resourcesReleased": true, "schema": "freecad-web-surface/python-family-batch/v1", "source": "freecad-source", "tier": "tier-1-readonly" }, "resultSha256": "af77252b8d4da3c74eee56b17f476e4badc97ed0f8daabba49a3ff70a53982e5", "replay": { "equal": true, "resultSha256": "af77252b8d4da3c74eee56b17f476e4badc97ed0f8daabba49a3ff70a53982e5" }, "crossModuleBoundary": { "result": { "cmd": "surface.pythonFamilyBatch", "count": 1, "module": "Surface", "ok": true, "records": [ { "apiId": "py:BIM:class:BlendCurve", "code": "unmatched_source_record", "family": "geometry-value", "message": "Surface API record is not part of this module-scoped adapter", "name": "BlendCurve", "native": true, "resourcesReleased": true, "sourceEntry": "src/Mod/Surface/App/Blending/BlendCurve.pyi", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "status": "not_implemented" } ], "resourcesReleased": true, "schema": "freecad-web-surface/python-family-batch/v1", "source": "freecad-source", "tier": "tier-1-readonly" }, "resultSha256": "868550cae0e791d49ff141882df39e5b96e50b885ad66ffb935df5a055a25cd1" }, "malformedRequest": { "result": { "ok": false, "code": "invalid_request", "error": "surface.pythonFamilyBatch tier-2 records require kind" }, "resultSha256": "fbda793ccaec9d803c4d3bbe36980f26683c70dbebfc2618aeb90e9beafdee4f" }, "dispositionCounts": { "exposed": 0, "restricted": 1, "nonportable": 0, "not_implemented": 3 }, "records": [ { "apiId": "py:Surface:class:BlendCurve", "name": "BlendCurve", "family": "geometry-value", "status": "not_implemented", "code": "method_evidence_pending", "parameterSchema": "source-declared", "returnSchema": "source-declared", "sourceEntry": "src/Mod/Surface/App/Blending/BlendCurve.pyi", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "evidenceSha256": "86f0cda0ae0bda3210204a660fdda404248f7ec547c4d35202374c3ec491eef2" }, { "apiId": "py:Surface:class:BlendPoint", "name": "BlendPoint", "family": "geometry-value", "status": "not_implemented", "code": "method_evidence_pending", "parameterSchema": "source-declared", "returnSchema": "source-declared", "sourceEntry": "src/Mod/Surface/App/Blending/BlendPoint.pyi", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "evidenceSha256": "2dbc0c2f3e9a10ab3569a72b82815aeb5e3686ed547104b689ba8c7315737f0b" }, { "apiId": "py:Surface:class:SurfaceWorkbench", "name": "SurfaceWorkbench", "family": "geometry-value", "status": "restricted", "code": "gui_dependency_unavailable", "parameterSchema": "source-declared", "returnSchema": "gui-resource", "sourceEntry": "src/Mod/Surface/InitGui.py", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "evidenceSha256": "4fa8a2860ab955cc838e319af144be5cdaa190ccd2417868f452ecfbe353b219" }, { "apiId": "py:Surface:method:BlendPoint.getSize", "name": "BlendPoint.getSize", "family": "generic-object", "status": "not_implemented", "code": "method_evidence_pending", "parameterSchema": "source-declared", "returnSchema": "source-declared", "sourceEntry": "src/Mod/Surface/App/Blending/BlendPoint.pyi", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "evidenceSha256": "d44011c5c1d3db2174d51c3cd7bdc6f538738ac221e4aaaa207580189646bd8e" } ], "resources": { "resourcesReleased": true, "documentMutation": false }, "artifacts": { "wasm": { "path": "web/public/kernel/FreeCADWebSurfaceRuntimeProbe.wasm", "sha256": "68824648c592c227a611aa7d6b52d97cc7919f5307ae74f175d6360167533bc0" }, "loader": { "path": "web/public/kernel/FreeCADWebSurfaceRuntimeProbe.js", "sha256": "8662bb3660451a13353295ce7413dcd2e4bccbfcf6d4b6da7c7e2cc956f8ca00" } }, "boundaries": [ "Surface Workbench remains restricted without FreeCADGui.", "BlendCurve/BlendPoint symbols and BlendPoint.getSize remain not_implemented pending method-level native argument/return replay.", "All statuses and hashes derive from compiled FreeCAD through fc_web_dispatch_json; no JavaScript API result is substituted." ] }