Files
FreeCADWasmDev/docs/p6/partdesign-action-03-facade.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

124 lines
3.7 KiB
JSON

{
"schema": "freecad-web-partdesign-action-03-facade/v1",
"task_id": "FW-P6-PDN-ACT-03-E",
"module": "PartDesign",
"action": "partdesign.pythonApi",
"result": "pass",
"envelopeSchema": "freecad-web-facade/v1",
"typedSchema": "freecad-web-partdesign/python-api/v1",
"fixture": {
"schema": "freecad-web-partdesign/python-api/v1",
"module": "PartDesign",
"action": "python-api",
"sourceEntry": "src/Mod/PartDesign/App/AppPartDesignPy.cpp",
"inputSha256": "17b74b335999f805d8a438ff502d301b994a077796f1edcddf610c73545d4e3b"
},
"trace": {
"ready": {
"kind": "ready",
"action": "partdesign.pythonApi"
},
"success": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "pdn-python-success-1",
"result": {
"schema": "freecad-web-partdesign/python-api/v1",
"module": "PartDesign",
"action": "python-api",
"sourceEntry": "src/Mod/PartDesign/App/AppPartDesignPy.cpp",
"summary": "src/Mod/PartDesign/App/AppPartDesignPy.cpp|exports=makeFilletArc|generatedBindings=2",
"apiCount": 1,
"apiNames": [
"makeFilletArc"
],
"generatedBindings": 2,
"readOnly": true,
"resourcesReleased": true
}
},
"expectedError": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "pdn-python-error-1",
"error": {
"code": "revision_mismatch",
"message": "PartDesign Python source entry is not locked",
"diagnostic": {
"field": "sourceEntry"
}
}
},
"duplicate": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "pdn-python-success-1",
"error": {
"code": "duplicate_request",
"message": "requestId has already been dispatched"
}
},
"cancelled": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "pdn-python-cancel-1",
"error": {
"code": "cancelled",
"message": "request was cancelled"
}
},
"afterCancel": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "pdn-python-after-cancel-1",
"result": {
"schema": "freecad-web-partdesign/python-api/v1",
"module": "PartDesign",
"action": "python-api",
"sourceEntry": "src/Mod/PartDesign/App/AppPartDesignPy.cpp",
"summary": "src/Mod/PartDesign/App/AppPartDesignPy.cpp|exports=makeFilletArc|generatedBindings=2",
"apiCount": 1,
"apiNames": [
"makeFilletArc"
],
"generatedBindings": 2,
"readOnly": true,
"resourcesReleased": true
}
}
},
"traceSha256": "67e4d8f7ce2ab2f7ee9c4f183c75c59051353e556eb56660f813de7b26fd5a8c",
"sequencing": {
"requestCount": 6,
"responseCount": 6,
"maxActive": 1,
"cancelAccepted": true
},
"schemaChecks": {
"success": true,
"expectedError": true,
"duplicate": true,
"cancel": true,
"afterCancel": true,
"noNativePointers": true
},
"artifacts": {
"kernel": "docs/p6/partdesign-action-03-kernel.json",
"recovery": "docs/p6/partdesign-action-03-recovery.json",
"worker": "web/src/partdesign-python.worker.ts"
},
"commands": [
"npx tsc ... web/src/facade-envelope.ts web/src/partdesign-python-facade.ts",
"node tools/run_p6_partdesign_action03_facade.mjs freecad-source/build-web/configure/bin"
],
"boundaries": [
"The typed facade exposes the native Python export summary without pointers.",
"Desktop PySide/Pivy and GUI Python exports remain outside this worker contract."
]
}