Files
FreeCADWasmDev/docs/p6/part-make-box-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

342 lines
9.7 KiB
JSON

{
"schema": "freecad-web-p6-part-make-box-method-runtime/v1",
"taskId": "FW-P6-FPA-Y",
"module": "Part",
"tier": "tier-2-pure",
"apiId": "py:Part:function:makeBox",
"status": "pass",
"sourceEntry": "src/Mod/Part/App/AppPartPy.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"route": {
"command": "part.pythonMethod",
"worker": "web/src/part.worker.ts",
"facade": "web/src/part-python-method-facade.ts",
"apiBridge": "web/src/api-method-bridge.ts",
"native": "freecad-source/src/WebAssembly/FreeCADCoreProbe/PartBoxProbe.cpp:fc_web_dispatch_json"
},
"fixture": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "request",
"requestId": "part-box-success",
"command": "part.pythonMethod",
"payload": {
"schema": "freecad-web-part/python-method/v1",
"module": "Part",
"tier": "tier-2-pure",
"apiId": "py:Part:function:makeBox",
"name": "makeBox",
"family": "pure-function",
"args": {
"length": 2,
"width": 3,
"height": 4
}
},
"documentId": "part-python-method"
},
"fixtureSha256": "d85f3697efa78cde8a271c4e3c7b4f7a6b14a6188f47a896ac9a292ae29888ef",
"trace": {
"ready": {
"kind": "ready",
"action": "part.pythonMethod"
},
"success": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "part-box-success",
"result": {
"apiId": "py:Part:function:makeBox",
"family": "pure-function",
"module": "Part",
"name": "makeBox",
"native": true,
"ok": true,
"parameterSchema": {
"height": "number",
"length": "number",
"width": "number"
},
"resourcesReleased": true,
"result": {
"height": 4,
"length": 2,
"shapeType": "Solid",
"solid": true,
"volume": 23.999999999999996,
"width": 3
},
"returnSchema": {
"fields": {
"height": "number",
"length": "number",
"shapeType": "string",
"solid": "boolean",
"volume": "number",
"width": "number"
},
"type": "Part.Shape"
},
"schema": "freecad-web-part/python-method/v1",
"source": "freecad-source",
"sourceEntry": "src/Mod/Part/App/AppPartPy.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed",
"tier": "tier-2-pure"
}
},
"repeat": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "part-box-repeat",
"result": {
"apiId": "py:Part:function:makeBox",
"family": "pure-function",
"module": "Part",
"name": "makeBox",
"native": true,
"ok": true,
"parameterSchema": {
"height": "number",
"length": "number",
"width": "number"
},
"resourcesReleased": true,
"result": {
"height": 4,
"length": 2,
"shapeType": "Solid",
"solid": true,
"volume": 23.999999999999996,
"width": 3
},
"returnSchema": {
"fields": {
"height": "number",
"length": "number",
"shapeType": "string",
"solid": "boolean",
"volume": "number",
"width": "number"
},
"type": "Part.Shape"
},
"schema": "freecad-web-part/python-method/v1",
"source": "freecad-source",
"sourceEntry": "src/Mod/Part/App/AppPartPy.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed",
"tier": "tier-2-pure"
}
},
"invalid": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "part-box-invalid",
"error": {
"code": "invalid_arguments",
"message": "Part.makeBox dimensions must be positive",
"diagnostic": {
"args": {
"length": 2,
"width": 0,
"height": 4
}
}
}
},
"cancelled": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "part-box-cancel",
"error": {
"code": "cancelled",
"message": "request was cancelled"
}
},
"direct": {
"apiId": "py:Part:function:makeBox",
"family": "pure-function",
"module": "Part",
"name": "makeBox",
"native": true,
"ok": true,
"parameterSchema": {
"height": "number",
"length": "number",
"width": "number"
},
"resourcesReleased": true,
"result": {
"height": 4,
"length": 2,
"shapeType": "Solid",
"solid": true,
"volume": 23.999999999999996,
"width": 3
},
"returnSchema": {
"fields": {
"height": "number",
"length": "number",
"shapeType": "string",
"solid": "boolean",
"volume": "number",
"width": "number"
},
"type": "Part.Shape"
},
"schema": "freecad-web-part/python-method/v1",
"source": "freecad-source",
"sourceEntry": "src/Mod/Part/App/AppPartPy.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed",
"tier": "tier-2-pure"
},
"directRepeat": {
"apiId": "py:Part:function:makeBox",
"family": "pure-function",
"module": "Part",
"name": "makeBox",
"native": true,
"ok": true,
"parameterSchema": {
"height": "number",
"length": "number",
"width": "number"
},
"resourcesReleased": true,
"result": {
"height": 4,
"length": 2,
"shapeType": "Solid",
"solid": true,
"volume": 23.999999999999996,
"width": 3
},
"returnSchema": {
"fields": {
"height": "number",
"length": "number",
"shapeType": "string",
"solid": "boolean",
"volume": "number",
"width": "number"
},
"type": "Part.Shape"
},
"schema": "freecad-web-part/python-method/v1",
"source": "freecad-source",
"sourceEntry": "src/Mod/Part/App/AppPartPy.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed",
"tier": "tier-2-pure"
},
"crossModule": {
"ok": false,
"code": "unmatched_source_record",
"error": "Part native method is not registered for this module/tier"
},
"unsupported": {
"ok": false,
"code": "unsupported_command",
"error": "Part native dispatch command is not registered"
},
"bridgeSuccess": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "api-method-1788326178188",
"result": {
"apiId": "py:Part:function:makeBox",
"family": "pure-function",
"module": "Part",
"name": "makeBox",
"native": true,
"ok": true,
"parameterSchema": {
"height": "number",
"length": "number",
"width": "number"
},
"resourcesReleased": true,
"result": {
"height": 4,
"length": 2,
"shapeType": "Solid",
"solid": true,
"volume": 23.999999999999996,
"width": 3
},
"returnSchema": {
"fields": {
"height": "number",
"length": "number",
"shapeType": "string",
"solid": "boolean",
"volume": "number",
"width": "number"
},
"type": "Part.Shape"
},
"schema": "freecad-web-part/python-method/v1",
"source": "freecad-source",
"sourceEntry": "src/Mod/Part/App/AppPartPy.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed",
"tier": "tier-2-pure"
}
},
"bridgeInvalid": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "api-method-1788326178188",
"error": {
"code": "invalid_arguments",
"message": "Part.makeBox requires [length, width, height] positive finite numeric arguments",
"diagnostic": {
"apiId": "py:Part:function:makeBox",
"args": [
2,
0,
4
]
}
}
}
},
"replay": {
"workerEqual": true,
"nativeEqual": true,
"workerResultSha256": "02b37b10405ad8f8d184d1f8fe72f5fae19cfe787d47efcf51ba765d32b3bd75",
"nativeResultSha256": "02b37b10405ad8f8d184d1f8fe72f5fae19cfe787d47efcf51ba765d32b3bd75"
},
"resources": {
"resourcesReleased": true,
"documentMutation": false
},
"artifacts": {
"wasm": {
"path": "web/public/kernel/FreeCADWebPartBoxProbe.wasm",
"sha256": "67ad25ffd9962e986c506944fc53cb0da59b07f7f6cf1b8cf942f8fd1b49442c"
},
"loader": {
"path": "web/public/kernel/FreeCADWebPartBoxProbe.js",
"sha256": "8af2d3ef31e9dc0749b65cd32f34258e0d7e9547df5238174466d9a83ecb93e0"
},
"source": {
"path": "freecad-source/src/WebAssembly/FreeCADCoreProbe/PartBoxProbe.cpp",
"officialBinding": "freecad-source/src/Mod/Part/App/AppPartPy.cpp"
}
},
"boundaries": [
"Part.makeBox accepts only positive finite length, width and height in the typed Web method contract.",
"All shape values are returned by the compiled FreeCAD Part Python binding through fc_web_dispatch_json; no JavaScript geometry substitute is used."
]
}