{ "schema": "freecad-web-p6-document-contract-gate/v1", "taskId": "FW-P6-FPA-C", "result": "pass", "contracts": { "document-ready": { "status": "pass", "stage": "ready", "responseKind": null, "error": null, "progressEvents": 0 }, "document-action": { "status": "pass", "stage": "success", "responseKind": "result", "error": null, "progressEvents": 5 }, "document-duplicate": { "status": "pass", "stage": "success", "responseKind": "error", "error": "duplicate_request", "progressEvents": 5 }, "document-expected-error": { "status": "pass", "stage": "expected-error", "responseKind": "error", "error": "unknown_command", "progressEvents": 5 }, "document-cancel": { "status": "pass", "stage": "cancelled", "responseKind": "error", "error": "cancelled", "progressEvents": 0 }, "document-reset": { "status": "pass", "stage": "reset", "responseKind": null, "error": null, "progressEvents": 0 }, "document-repeat": { "status": "pass", "stage": "success", "responseKind": "result", "error": null, "progressEvents": 5 } }, "semantic": { "action": { "schema": "freecad-web-core-document-full-result/v1", "command": "document.full", "document": { "id": "full-document", "name": "Full Web Document", "revision": 1, "dirty": true, "objects": 1, "transactionDepth": 0 }, "recovery": { "invalidError": "Length of box too small", "invalidVolume": 23.999999999999996, "recoveredVolume": 23.999999999999996, "hasError": 0 }, "save": { "path": "/tmp/WebBox.FCStd", "size": 2436, "volume": 23.999999999999996 }, "opened": { "documentCount": 1, "objectCount": 1, "objectType": "Part::Box", "dimensions": [ 2, 3, 4 ], "volume": 23.999999999999996 }, "transaction": { "id": 1, "beforeVolume": 23.999999999999996, "afterVolume": 47.99999999999999, "undoVolume": 23.999999999999996, "redoVolume": 47.99999999999999, "abortVolume": 47.99999999999999, "undoResult": 1, "redoResult": 1 }, "semanticRoundTrip": true, "resourcesReleased": true }, "repeat": { "schema": "freecad-web-core-document-full-result/v1", "command": "document.full", "document": { "id": "full-document", "name": "Full Web Document", "revision": 1, "dirty": true, "objects": 1, "transactionDepth": 0 }, "recovery": { "invalidError": "Length of box too small", "invalidVolume": 23.999999999999996, "recoveredVolume": 23.999999999999996, "hasError": 0 }, "save": { "path": "/tmp/WebBox.FCStd", "size": 2435, "volume": 23.999999999999996 }, "opened": { "documentCount": 1, "objectCount": 1, "objectType": "Part::Box", "dimensions": [ 2, 3, 4 ], "volume": 23.999999999999996 }, "transaction": { "id": 3, "beforeVolume": 23.999999999999996, "afterVolume": 47.99999999999999, "undoVolume": 23.999999999999996, "redoVolume": 47.99999999999999, "abortVolume": 47.99999999999999, "undoResult": 1, "redoResult": 1 }, "semanticRoundTrip": true, "resourcesReleased": true }, "compares": [ "objectType", "dimensions", "volume", "recovery", "transaction" ] }, "chrome": { "artifact": "docs/p6/document-contract-chrome.json", "sha256": "372a099e1247db9e4b48c744bd102f01619e687615153fa97d345a2c12296fca", "screenshot": "FreeCAD/docs/p6/document-contract-chrome.png", "screenshotSha256": "4854121a86d964ac50f4bec37aa25947de17d5fbf594ec227915a1df71fb4adf", "browser": "Google Chrome 151.0.7922.137", "externalRequests": 0, "exceptions": 0 }, "boundaries": [ "C proves one native Part::Box document semantic round-trip and transaction/recovery contract; it does not close the 403 object inventory.", "FCStd acceptance compares semantic fields, not archive bytes.", "Cross-module links and larger object graphs remain explicit D/C follow-up work." ] }