{ "schema": "freecad-web-p6-reverseengineering-action-04-facade/v1", "taskId": "FW-P6-REV-ACT-04-E", "module": "ReverseEngineering", "action": "reverseengineering.saveReopen", "result": "pass", "envelopeSchema": "freecad-web-facade/v1", "typedSchema": "freecad-web-reverseengineering/save-reopen/v1", "fixture": { "schema": "freecad-web-reverseengineering/save-reopen/v1", "module": "ReverseEngineering", "action": "save/reopen", "path": "/tmp/ReverseEngineeringWeb.FCStd" }, "trace": { "ready": { "kind": "ready", "action": "reverseengineering.saveReopen" }, "success": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "result", "requestId": "rev-save-success-1", "result": { "schema": "freecad-web-reverseengineering/save-reopen/v1", "module": "ReverseEngineering", "action": "save/reopen", "format": "FCStd", "path": "/tmp/ReverseEngineeringWeb.FCStd", "size": 1, "objectType": "Part::Feature", "objectCount": 1, "beforeLength": 2.9435343684199604, "afterLength": 2.9435343684199604, "roundTrip": true, "resourcesReleased": true } }, "expectedError": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "error", "requestId": "rev-save-error-1", "error": { "code": "invalid_path", "message": "ReverseEngineering FCStd path is not locked", "diagnostic": { "path": "/tmp/ReverseEngineeringInvalid.txt" } } }, "duplicate": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "error", "requestId": "rev-save-success-1", "error": { "code": "duplicate_request", "message": "requestId has already been dispatched" } }, "cancelled": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "error", "requestId": "rev-save-cancel-1", "error": { "code": "cancelled", "message": "request was cancelled" } }, "after": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "result", "requestId": "rev-save-after-cancel-1", "result": { "schema": "freecad-web-reverseengineering/save-reopen/v1", "module": "ReverseEngineering", "action": "save/reopen", "format": "FCStd", "path": "/tmp/ReverseEngineeringWeb.FCStd", "size": 1, "objectType": "Part::Feature", "objectCount": 1, "beforeLength": 2.9435343684199604, "afterLength": 2.9435343684199604, "roundTrip": true, "resourcesReleased": true } } }, "traceSha256": "e5f84e5d29657056377dc81870c7a829d437fa6622fc3cfa164bb039206e59d1", "sequencing": { "requestCount": 6, "responseCount": 6, "maxActive": 1, "cancelAccepted": true }, "schemaChecks": { "noNativePointers": true }, "artifacts": { "kernel": "docs/p6/reverseengineering-action-04-kernel.json", "recovery": "docs/p6/reverseengineering-action-04-recovery.json", "worker": "web/src/reverseengineering-save.worker.ts" }, "boundaries": [ "The typed facade exposes Part::Feature persistence metadata only; no native pointers cross the Worker boundary." ] }