{ "schema": "freecad-web-p6-python-api-module-batch-gate/v1", "taskId": "FW-P6-FPA-F3-SPREADSHEET", "module": "Spreadsheet", "tier": "tier-3-stateful", "result": "pass", "coverage": { "records": 7, "counts": { "not_implemented": 3, "restricted": 4 } }, "records": [ { "id": "py:Spreadsheet:class:PropertyColumnWidths", "name": "PropertyColumnWidths", "disposition": "not_implemented", "evidence": [ "docs/p6/python-api-stateful-family-runtime.json" ], "reason": "typed stateful method argument/return replay is pending", "family": "property", "sourceEntry": "src/Mod/Spreadsheet/App/PropertyColumnWidths.pyi", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "document-stateful-diff/v1", "returnSchema": "document-stateful-result/v1", "documentDiffSha256": "bf53c7019bd219045763498abdd8be0977703b1ddb668e39b545c7456e1126ae", "errorRecoverySha256": "0ea577005194ee2c46923e4a8583be6c1fef4d69000e5b73c0a0f6aa960e7fc2", "evidenceSha256": "47504e03afc655dce012fc799fd185da08f6f49cd6d5de19447ebfd685ef7cb3" }, { "id": "py:Spreadsheet:class:PropertyRowHeights", "name": "PropertyRowHeights", "disposition": "not_implemented", "evidence": [ "docs/p6/python-api-stateful-family-runtime.json" ], "reason": "typed stateful method argument/return replay is pending", "family": "property", "sourceEntry": "src/Mod/Spreadsheet/App/PropertyRowHeights.pyi", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "document-stateful-diff/v1", "returnSchema": "document-stateful-result/v1", "documentDiffSha256": "bf53c7019bd219045763498abdd8be0977703b1ddb668e39b545c7456e1126ae", "errorRecoverySha256": "0ea577005194ee2c46923e4a8583be6c1fef4d69000e5b73c0a0f6aa960e7fc2", "evidenceSha256": "48dabd39749b1d981ad85419a4fc0cee1cb305becafb92ceb4b34363dd953bc7" }, { "id": "py:Spreadsheet:class:PropertySheet", "name": "PropertySheet", "disposition": "not_implemented", "evidence": [ "docs/p6/python-api-stateful-family-runtime.json" ], "reason": "typed stateful method argument/return replay is pending", "family": "property", "sourceEntry": "src/Mod/Spreadsheet/App/PropertySheet.pyi", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "document-stateful-diff/v1", "returnSchema": "document-stateful-result/v1", "documentDiffSha256": "bf53c7019bd219045763498abdd8be0977703b1ddb668e39b545c7456e1126ae", "errorRecoverySha256": "0ea577005194ee2c46923e4a8583be6c1fef4d69000e5b73c0a0f6aa960e7fc2", "evidenceSha256": "33ab9bb653cee7ea825d0bd62038b0f5d48f1414104151e2044fc949b652b236" }, { "id": "py:Spreadsheet:class:SpreadsheetWorkbench", "name": "SpreadsheetWorkbench", "disposition": "restricted", "evidence": [ "docs/p6/python-api-stateful-family-runtime.json" ], "reason": "GUI/PySide/Pivy stateful API is unavailable in the headless Web runtime", "family": "serialization", "sourceEntry": "src/Mod/Spreadsheet/InitGui.py", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "document-stateful-diff/v1", "returnSchema": "document-stateful-result/v1", "documentDiffSha256": "bf53c7019bd219045763498abdd8be0977703b1ddb668e39b545c7456e1126ae", "errorRecoverySha256": "0ea577005194ee2c46923e4a8583be6c1fef4d69000e5b73c0a0f6aa960e7fc2", "evidenceSha256": "9bea1583713b4149f67b90082d673a7ae2feba3bdfb629c8e291b9996276ab98" }, { "id": "py:Spreadsheet:class:ViewProviderSpreadsheet", "name": "ViewProviderSpreadsheet", "disposition": "restricted", "evidence": [ "docs/p6/python-api-stateful-family-runtime.json" ], "reason": "GUI/PySide/Pivy stateful API is unavailable in the headless Web runtime", "family": "serialization", "sourceEntry": "src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheet.pyi", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "document-stateful-diff/v1", "returnSchema": "document-stateful-result/v1", "documentDiffSha256": "bf53c7019bd219045763498abdd8be0977703b1ddb668e39b545c7456e1126ae", "errorRecoverySha256": "0ea577005194ee2c46923e4a8583be6c1fef4d69000e5b73c0a0f6aa960e7fc2", "evidenceSha256": "ced9f7559ba26718a13938f05beb36f03e3cb334cf6a923d4d30c4c637e9cb3b" }, { "id": "py:Spreadsheet:method:SpreadsheetWorkbench.GetClassName", "name": "SpreadsheetWorkbench.GetClassName", "disposition": "restricted", "evidence": [ "docs/p6/python-api-stateful-family-runtime.json" ], "reason": "GUI/PySide/Pivy stateful API is unavailable in the headless Web runtime", "family": "property", "sourceEntry": "src/Mod/Spreadsheet/InitGui.py", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "document-stateful-diff/v1", "returnSchema": "document-stateful-result/v1", "documentDiffSha256": "bf53c7019bd219045763498abdd8be0977703b1ddb668e39b545c7456e1126ae", "errorRecoverySha256": "0ea577005194ee2c46923e4a8583be6c1fef4d69000e5b73c0a0f6aa960e7fc2", "evidenceSha256": "990cce79e56039273360c51222e95b530e0ca13b65c0424b4b8ffd048aa9e1f9" }, { "id": "py:Spreadsheet:method:SpreadsheetWorkbench.Initialize", "name": "SpreadsheetWorkbench.Initialize", "disposition": "restricted", "evidence": [ "docs/p6/python-api-stateful-family-runtime.json" ], "reason": "GUI/PySide/Pivy stateful API is unavailable in the headless Web runtime", "family": "lifecycle-command", "sourceEntry": "src/Mod/Spreadsheet/InitGui.py", "sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47", "parameterSchema": "document-stateful-diff/v1", "returnSchema": "document-stateful-result/v1", "documentDiffSha256": "bf53c7019bd219045763498abdd8be0977703b1ddb668e39b545c7456e1126ae", "errorRecoverySha256": "0ea577005194ee2c46923e4a8583be6c1fef4d69000e5b73c0a0f6aa960e7fc2", "evidenceSha256": "15d0cf0d05403587706f1261cf8037354d310536af03b38988c576666e4b2f61" } ], "manifestSha256": "9974d9d768b1b0751a318f559e1c1f01a0a60a8afd9eb41b70736bb24539f152", "nativeRuntime": "docs/p6/python-api-stateful-family-runtime.json", "nativeRuntimeSha256": "9a0da43d370af4f728eb759e19d6fea2246c9b3ceef6b445b0e4a13b81653b57", "adapterManifest": "docs/p6/tier3-stateful-adapter-manifest.json", "adapterManifestSha256": "ba90138c57d45c3cb465185746b95c9b239ff043655356c28d52d2c76f42d64c", "route": { "worker": "stateful-family.worker.ts", "command": "web.statefulFamilyBatch", "state": "Document/Spreadsheet" }, "nativeRoute": { "worker": "web/src/stateful-family.worker.ts", "facade": "web/src/stateful-family-facade.ts", "command": "web.statefulFamilyBatch", "native": "freecad-source/src/WebAssembly/FreeCADCoreProbe/DocumentProbe.cpp:fc_web_dispatch_json" }, "resources": { "resourcesReleased": true, "documentMutation": true, "fcstdSemanticReplay": true, "transactionUndoRedo": true, "invalidRecomputeRecovery": true }, "boundaries": [ "Terminal disposition does not claim that restricted or not_implemented APIs are callable.", "Only exact module-scoped native evidence can promote a symbol." ] }