Files
FreeCADWasmDev/docs/p6/sandbox-f2s-method-runtime.json
wangdequan 9a7c4f0335 Save FreeCAD Web workspace sources and user validation evidence
IFC native binding remains incomplete; preserve accurate test results.
2026-09-15 22:01:58 +08:00

408 lines
14 KiB
JSON

{
"schema": "freecad-web-p6-sandbox-f2s-method-runtime/v1",
"taskId": "FW-P6-FPA-Y",
"module": "Sandbox",
"tier": "tier-2-pure",
"apiId": "py:Sandbox:function:f2s",
"status": "pass",
"source": {
"entry": "src/Mod/Sandbox/exportDRAWEXE.py",
"function": "f2s",
"revision": "2778e3f9c215da48bf0cfd562478d45d624aaa47"
},
"route": {
"command": "sandbox.pythonFamilyBatch",
"worker": "web/src/sandbox-python.worker.ts",
"facade": "web/src/sandbox-python-family-facade.ts",
"apiBridge": "web/src/api-method-bridge.ts",
"native": "freecad-source/src/WebAssembly/FreeCADCoreProbe/SandboxRuntimeProbe.cpp:fc_web_dispatch_json"
},
"request": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "request",
"requestId": "sandbox-f2s-success",
"command": "sandbox.pythonFamilyBatch",
"payload": {
"schema": "freecad-web-sandbox/python-family-batch/v1",
"module": "Sandbox",
"tier": "tier-2-pure",
"records": [
{
"apiId": "py:Sandbox:function:f2s",
"name": "f2s",
"family": "pure-function",
"sourcePath": "src/Mod/Sandbox/exportDRAWEXE.py",
"disposition": "not_implemented",
"args": {
"value": 1.25,
"angle": false,
"axis": false
}
}
]
},
"documentId": "sandbox-python-family"
},
"requestSha256": "a92ed9d10598f561309c4202576a47a41973fe1a98cef41676dd7e3abdcb54f2",
"trace": {
"success": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "sandbox-f2s-success",
"result": {
"cmd": "sandbox.pythonFamilyBatch",
"count": 1,
"module": "Sandbox",
"ok": true,
"records": [
{
"apiId": "py:Sandbox:function:f2s",
"code": "native_python_execution",
"family": "pure-function",
"message": "official Sandbox exportDRAWEXE.py:f2s executed by FreeCAD Python",
"name": "f2s",
"native": true,
"parameterSchema": "f2s(value: float, angle: bool = False, axis: bool = False) -> str",
"replay": "native-python-source",
"resourcesReleased": true,
"result": "1.25",
"returnSchema": "string",
"sourceEntry": "src/Mod/Sandbox/exportDRAWEXE.py",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
}
],
"resourcesReleased": true,
"schema": "freecad-web-sandbox/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-2-pure"
}
},
"repeat": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "sandbox-f2s-repeat",
"result": {
"cmd": "sandbox.pythonFamilyBatch",
"count": 1,
"module": "Sandbox",
"ok": true,
"records": [
{
"apiId": "py:Sandbox:function:f2s",
"code": "native_python_execution",
"family": "pure-function",
"message": "official Sandbox exportDRAWEXE.py:f2s executed by FreeCAD Python",
"name": "f2s",
"native": true,
"parameterSchema": "f2s(value: float, angle: bool = False, axis: bool = False) -> str",
"replay": "native-python-source",
"resourcesReleased": true,
"result": "1.25",
"returnSchema": "string",
"sourceEntry": "src/Mod/Sandbox/exportDRAWEXE.py",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
}
],
"resourcesReleased": true,
"schema": "freecad-web-sandbox/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-2-pure"
}
},
"invalid": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "sandbox-f2s-invalid",
"result": {
"cmd": "sandbox.pythonFamilyBatch",
"count": 1,
"module": "Sandbox",
"ok": true,
"records": [
{
"apiId": "py:Sandbox:function:f2s",
"code": "source_error",
"family": "pure-function",
"message": "Sandbox.f2s requires numeric value and optional boolean angle/axis arguments",
"name": "f2s",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sandbox/App/AppSandbox.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
}
],
"resourcesReleased": true,
"schema": "freecad-web-sandbox/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-2-pure"
}
},
"cross": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "sandbox-f2s-cross",
"result": {
"cmd": "sandbox.pythonFamilyBatch",
"count": 1,
"module": "Sandbox",
"ok": true,
"records": [
{
"apiId": "py:BIM:function:f2s",
"code": "unmatched_source_record",
"family": "pure-function",
"message": "Sandbox API record is not part of this module-scoped adapter",
"name": "f2s",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sandbox/App/AppSandbox.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
}
],
"resourcesReleased": true,
"schema": "freecad-web-sandbox/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-2-pure"
}
},
"cancelled": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "sandbox-f2s-cancel",
"error": {
"code": "cancelled",
"message": "request was cancelled before execution"
}
},
"direct": {
"cmd": "sandbox.pythonFamilyBatch",
"count": 1,
"module": "Sandbox",
"ok": true,
"records": [
{
"apiId": "py:Sandbox:function:f2s",
"code": "native_python_execution",
"family": "pure-function",
"message": "official Sandbox exportDRAWEXE.py:f2s executed by FreeCAD Python",
"name": "f2s",
"native": true,
"parameterSchema": "f2s(value: float, angle: bool = False, axis: bool = False) -> str",
"replay": "native-python-source",
"resourcesReleased": true,
"result": "1.25",
"returnSchema": "string",
"sourceEntry": "src/Mod/Sandbox/exportDRAWEXE.py",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
}
],
"resourcesReleased": true,
"schema": "freecad-web-sandbox/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-2-pure"
},
"directRepeat": {
"cmd": "sandbox.pythonFamilyBatch",
"count": 1,
"module": "Sandbox",
"ok": true,
"records": [
{
"apiId": "py:Sandbox:function:f2s",
"code": "native_python_execution",
"family": "pure-function",
"message": "official Sandbox exportDRAWEXE.py:f2s executed by FreeCAD Python",
"name": "f2s",
"native": true,
"parameterSchema": "f2s(value: float, angle: bool = False, axis: bool = False) -> str",
"replay": "native-python-source",
"resourcesReleased": true,
"result": "1.25",
"returnSchema": "string",
"sourceEntry": "src/Mod/Sandbox/exportDRAWEXE.py",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
}
],
"resourcesReleased": true,
"schema": "freecad-web-sandbox/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-2-pure"
},
"directCross": {
"cmd": "sandbox.pythonFamilyBatch",
"count": 1,
"module": "Sandbox",
"ok": true,
"records": [
{
"apiId": "py:BIM:function:f2s",
"code": "unmatched_source_record",
"family": "pure-function",
"message": "Sandbox API record is not part of this module-scoped adapter",
"name": "f2s",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sandbox/App/AppSandbox.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
}
],
"resourcesReleased": true,
"schema": "freecad-web-sandbox/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-2-pure"
},
"unsupported": {
"ok": false,
"code": "unsupported_command",
"error": "Sandbox native dispatch command is not registered"
},
"bridgeSuccess": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "api-method-1788331379524",
"result": {
"cmd": "sandbox.pythonFamilyBatch",
"count": 1,
"module": "Sandbox",
"ok": true,
"records": [
{
"apiId": "py:Sandbox:function:f2s",
"code": "native_python_execution",
"family": "pure-function",
"message": "official Sandbox exportDRAWEXE.py:f2s executed by FreeCAD Python",
"name": "f2s",
"native": true,
"parameterSchema": "f2s(value: float, angle: bool = False, axis: bool = False) -> str",
"replay": "native-python-source",
"resourcesReleased": true,
"result": "1.25",
"returnSchema": "string",
"sourceEntry": "src/Mod/Sandbox/exportDRAWEXE.py",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
}
],
"resourcesReleased": true,
"schema": "freecad-web-sandbox/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-2-pure"
}
},
"bridgeInvalid": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "api-method-1788331379524",
"error": {
"code": "invalid_arguments",
"message": "Sandbox.f2s requires [value, angle?, axis?]",
"diagnostic": {
"apiId": "py:Sandbox:function:f2s",
"args": [
"bad"
]
}
}
},
"worker": {
"ready": {
"kind": "ready",
"action": "sandbox.pythonFamilyBatch"
},
"workerSuccess": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "sandbox-f2s-success",
"result": {
"cmd": "sandbox.pythonFamilyBatch",
"count": 1,
"module": "Sandbox",
"ok": true,
"records": [
{
"apiId": "py:Sandbox:function:f2s",
"code": "native_python_execution",
"family": "pure-function",
"message": "official Sandbox exportDRAWEXE.py:f2s executed by FreeCAD Python",
"name": "f2s",
"native": true,
"parameterSchema": "f2s(value: float, angle: bool = False, axis: bool = False) -> str",
"replay": "native-python-source",
"resourcesReleased": true,
"result": "1.25",
"returnSchema": "string",
"sourceEntry": "src/Mod/Sandbox/exportDRAWEXE.py",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
}
],
"resourcesReleased": true,
"schema": "freecad-web-sandbox/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-2-pure"
}
},
"workerDuplicate": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "sandbox-f2s-success",
"error": {
"code": "duplicate_request",
"message": "requestId has already been dispatched"
}
},
"reset": {
"kind": "reset",
"requestId": "sandbox-f2s-reset"
}
}
},
"traceSha256": "0f30d06a0202f6e0c1fe710557c1775e451910026d958ae927f880605dd42ea8",
"replay": {
"equal": true,
"resultSha256": "3c8a7ccf6a40e2f1dd22e6a9431b05514e522667d61b88665e8ac9719550b779"
},
"resources": {
"resourcesReleased": true,
"documentMutation": false
},
"artifacts": {
"wasm": {
"path": "web/public/kernel/FreeCADWebSandboxRuntimeProbe.wasm",
"sha256": "825104434e93c0642d9fefb853166cef945f1e6423d3d3144096a3f8d5530e65"
},
"loader": {
"path": "web/public/kernel/FreeCADWebSandboxRuntimeProbe.js",
"sha256": "e83a763944274e6978af432d86cf5eb82a9ba8f43379cf559f1fd36d135a407d"
}
},
"boundaries": [
"Malformed numeric arguments remain source_error from the official function path.",
"Cross-module IDs remain unmatched_source_record.",
"All values derive from compiled FreeCAD source through fc_web_dispatch_json; JavaScript only carries the typed envelope."
]
}