{ "schema": "freecad-web-p6-cam-persistence/v1", "task_id": "FW-P6-CAM-G", "result": "pass", "applicable": false, "reason": "CAM create/recompute currently uses an ephemeral document and exposes no FCStd save/reopen operation", "sourceRevision": "b5a086fda59b0325fe0996147e6e9b344414f9bc", "replay": { "firstHash": "164ba48f32e4d0723c4aef5fef295d6b91a2ff7bc4ef2473a78da0e504dfa912", "secondHash": "164ba48f32e4d0723c4aef5fef295d6b91a2ff7bc4ef2473a78da0e504dfa912", "equal": true, "runs": 2 }, "state": { "action": "cam.createRecompute", "document": { "name": "CAMKernelDocument", "activeAfterClose": 0 }, "object": { "name": "Toolpath", "type": "Path::Feature" }, "path": { "commandCount": 3, "length": 20, "gcode": "G0 X0.000000 Y0.000000\nG1 F100.000000 X10.000000 Y0.000000\nG1 F100.000000 X10.000000 Y10.000000\n" }, "recompute": { "count": 1, "hasError": 0 }, "stateSha256": "ad8497095fc6589bdea7c0a4d2c19b28b9d8c9c17227aa0f9111863e0b355677", "saveRequested": false, "documentMutation": false, "errorRecoveryStateUnchanged": true, "externalRequests": 0 }, "inputs": { "facade": "FreeCAD/docs/p6/cam-facade.json", "chrome": "FreeCAD/docs/p6/cam-chrome.json", "kernel": "FreeCAD/docs/p6/cam-kernel.json" }, "boundaries": [ "No FCStd round-trip claim is made because this action has no save/reopen API.", "The deterministic create/recompute state is replayed twice and remains unchanged after cancellation/error handling.", "Cross-version migration, full CAM serialization and GUI document persistence remain out of scope." ] }