{ "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." ] }