Files
FreeCADWasmDev/docs/p6/spreadsheet-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

105 lines
2.8 KiB
JSON

{
"schema": "freecad-web-p6-spreadsheet-action-03-facade/v1",
"taskId": "FW-P6-SPR-ACT-03-E",
"module": "Spreadsheet",
"action": "python-api",
"result": "pass",
"responses": {
"success": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "spr-act03-e-success",
"result": {
"schema": "freecad-web-spreadsheet/python-api/v1",
"module": "Spreadsheet",
"action": "python-api",
"sourceEntry": "src/Mod/Spreadsheet/App/AppSpreadsheet.cpp",
"apiCount": 3,
"cellA1": "21",
"cellB1": "=A1 * 2",
"readOnly": true,
"resourcesReleased": true
}
},
"expectedError": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "spr-act03-e-error",
"error": {
"code": "revision_mismatch",
"message": "Spreadsheet Python source entry is not locked",
"diagnostic": {
"field": "sourceEntry"
}
}
},
"duplicate": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "spr-act03-e-success",
"error": {
"code": "duplicate_request",
"message": "requestId has already been dispatched"
}
},
"cancelled": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "spr-act03-e-cancel",
"error": {
"code": "cancelled",
"message": "request was cancelled"
}
},
"after": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "spr-act03-e-after",
"result": {
"schema": "freecad-web-spreadsheet/python-api/v1",
"module": "Spreadsheet",
"action": "python-api",
"sourceEntry": "src/Mod/Spreadsheet/App/AppSpreadsheet.cpp",
"apiCount": 3,
"cellA1": "21",
"cellB1": "=A1 * 2",
"readOnly": true,
"resourcesReleased": true
}
}
},
"sequencing": {
"requestCount": 5,
"responseCount": 5,
"events": [
"ready",
"result:spr-act03-e-success",
"error:spr-act03-e-error",
"error:spr-act03-e-success",
"error:spr-act03-e-cancel",
"result:spr-act03-e-after"
]
},
"schemaChecks": {
"responses": true,
"noNativePointers": true
},
"fixture": {
"schema": "freecad-web-spreadsheet/python-api/v1",
"module": "Spreadsheet",
"action": "python-api",
"sourceEntry": "src/Mod/Spreadsheet/App/AppSpreadsheet.cpp",
"includeGui": false,
"inputSha256": "2f7e3a5fcff4d60d11ca1637e93ef7b1708120aa185a50c082f2ae3b88fc985f"
},
"boundaries": [
"Python API result comes from native FreeCAD Python runtime and exposes only typed values.",
"Cancellation is followed by a successful replay."
]
}