{ "schema": "freecad-web-p6-jtreader-action-03-facade/v1", "taskId": "FW-P6-JTR-ACT-03-E", "module": "JtReader", "action": "jtreader.saveReopen", "result": "pass", "envelopeSchema": "freecad-web-facade/v1", "typedSchema": "freecad-web-jtreader/save-reopen/v1", "fixture": { "schema": "freecad-web-jtreader/save-reopen/v1", "module": "JtReader", "action": "save/reopen", "path": "/tmp/JtReaderKernel.FCStd", "inputSha256": "ca9c055e9f175674c3294055a63a54a5aa689e0e6bf80ce94c6855e35342a646" }, "responses": { "success": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "result", "requestId": "jtr-act03-e-success", "result": { "schema": "freecad-web-jtreader/save-reopen/v1", "module": "JtReader", "action": "save/reopen", "format": ".fcstd", "path": "/tmp/JtReaderKernel.FCStd", "size": 1353, "objectCount": 1, "objectType": "App::InventorObject", "roundTrip": true, "resourcesReleased": true } }, "expectedError": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "error", "requestId": "jtr-act03-e-error", "error": { "code": "invalid_path", "message": "JtReader FCStd path is not writable", "diagnostic": { "path": "/tmp/invalid/JtReaderKernel.FCStd" } } }, "duplicate": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "error", "requestId": "jtr-act03-e-success", "error": { "code": "duplicate_request", "message": "requestId has already been dispatched" } }, "cancelled": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "error", "requestId": "jtr-act03-e-cancel", "error": { "code": "cancelled", "message": "request was cancelled before execution" } }, "afterCancel": { "schema": "freecad-web-facade/v1", "version": 1, "kind": "result", "requestId": "jtr-act03-e-after-cancel", "result": { "schema": "freecad-web-jtreader/save-reopen/v1", "module": "JtReader", "action": "save/reopen", "format": ".fcstd", "path": "/tmp/JtReaderKernel.FCStd", "size": 1353, "objectCount": 1, "objectType": "App::InventorObject", "roundTrip": true, "resourcesReleased": true } } }, "trace": [ { "direction": "request", "requestId": "jtr-act03-e-success", "command": "jtreader.saveReopen" }, { "direction": "handler-start", "requestId": "jtr-act03-e-success" }, { "direction": "handler-end", "requestId": "jtr-act03-e-success" }, { "direction": "response", "requestId": "jtr-act03-e-success", "kind": "result", "code": null }, { "direction": "request", "requestId": "jtr-act03-e-error", "command": "jtreader.saveReopen" }, { "direction": "handler-start", "requestId": "jtr-act03-e-error" }, { "direction": "handler-end", "requestId": "jtr-act03-e-error" }, { "direction": "response", "requestId": "jtr-act03-e-error", "kind": "error", "code": "invalid_path" }, { "direction": "request", "requestId": "jtr-act03-e-success", "command": "jtreader.saveReopen" }, { "direction": "response", "requestId": "jtr-act03-e-success", "kind": "error", "code": "duplicate_request" }, { "direction": "request", "requestId": "jtr-act03-e-cancel", "command": "jtreader.saveReopen" }, { "direction": "response", "requestId": "jtr-act03-e-cancel", "kind": "error", "code": "cancelled" }, { "direction": "request", "requestId": "jtr-act03-e-after-cancel", "command": "jtreader.saveReopen" }, { "direction": "handler-start", "requestId": "jtr-act03-e-after-cancel" }, { "direction": "handler-end", "requestId": "jtr-act03-e-after-cancel" }, { "direction": "response", "requestId": "jtr-act03-e-after-cancel", "kind": "result", "code": null } ], "sequencing": { "maxActive": 1, "requestCount": 5, "responseCount": 5, "cancelAccepted": true }, "state": { "unchangedAfterCancel": true, "successReplayEqual": true, "archiveSizeReplay": { "first": 1353, "afterCancel": 1353, "stable": true } }, "schemaChecks": { "request": true, "result": true, "expectedError": true, "duplicate": true, "cancel": true, "noNativePointers": true }, "artifacts": { "kernel": "docs/p6/jtreader-action-03-kernel.json", "wasm": "freecad-source/build-web/configure/bin/FreeCADWebJtReaderRuntimeProbe.wasm", "workerLog": "docs/freecad-p6-jtreader-action-03-e-facade.log" }, "commands": [ "npx tsc --target ES2022 --module ESNext --moduleResolution Bundler --strict --skipLibCheck --outDir --declaration false --noEmit false src/facade-envelope.ts src/jtreader-persistence-facade.ts", "node tools/run_p6_jtreader_action03_facade_smoke.mjs /jtreader-persistence-facade.js freecad-source/build-web/configure/bin" ], "boundaries": [ "Only JtReader FCStd save/reopen facade dispatch is covered; no other user actions or cross-version migration are included." ] }