Files
FreeCADWasmDev/docs/p6/reverseengineering-action-04-persistence.json
wangdequan 9a7c4f0335 Save FreeCAD Web workspace sources and user validation evidence
IFC native binding remains incomplete; preserve accurate test results.
2026-09-15 22:01:58 +08:00

80 lines
2.5 KiB
JSON

{
"schema": "freecad-web-p6-reverseengineering-action-04-persistence/v1",
"taskId": "FW-P6-REV-ACT-04-G",
"module": "ReverseEngineering",
"action": "save/reopen",
"result": "pass",
"applicable": true,
"format": "FCStd",
"path": "/tmp/ReverseEngineeringWeb.FCStd",
"objectType": "Part::Feature",
"objectCount": 1,
"beforeLength": 2.9435343684199604,
"afterLength": 2.9435343684199604,
"state": {
"documentMutation": true,
"localFcstdRoundTrip": true,
"readOnly": false,
"resourcesReleased": true
},
"evidence": {
"kernel": {
"first": {
"run": 1,
"error": "",
"path": "/tmp/ReverseEngineeringWeb.FCStd",
"objectType": "Part::Feature",
"beforeLength": 2.9435343684199604,
"afterLength": 2.9435343684199604,
"size": 1827,
"objectCount": 1
},
"second": {
"run": 1,
"error": "",
"path": "/tmp/ReverseEngineeringWeb.FCStd",
"objectType": "Part::Feature",
"beforeLength": 2.9435343684199604,
"afterLength": 2.9435343684199604,
"size": 1828,
"objectCount": 1
},
"deterministic": true,
"roundTrip": true
},
"recovery": {
"beforeSha256": "13fb67528799dc154f7d2b60329ef19f4e5ffb88f4186da7fcfb7ac864275a31",
"afterSha256": "13fb67528799dc154f7d2b60329ef19f4e5ffb88f4186da7fcfb7ac864275a31",
"unchangedAfterReject": true,
"repeatedErrorStable": true,
"resourcesReleased": true
},
"facade": {
"requestCount": 6,
"responseCount": 6,
"maxActive": 1,
"cancelAccepted": true
},
"chrome": {
"result": "pass",
"externalRequests": 0,
"exceptions": 0
},
"resultSha256": "5137650027f9d75eeb3eecd50215d6a6be9f33b4a8e81b8c2ac45ddbe36d8f3b"
},
"commands": [
"node tools/run_p6_reverseengineering_action04_persistence.mjs"
],
"artifacts": {
"kernel": "docs/p6/reverseengineering-action-04-kernel.json",
"recovery": "docs/p6/reverseengineering-action-04-recovery.json",
"facade": "docs/p6/reverseengineering-action-04-facade.json",
"chrome": "docs/p6/reverseengineering-action-04-chrome.json",
"workerLog": "docs/freecad-p6-reverseengineering-action-04-g-persistence.log"
},
"boundaries": [
"Persistence stores the generated curve as Part::Feature because ReverseEngineering App itself registers no persistent DocumentObject type.",
"The FCStd container size may vary with document metadata; geometry/object semantic fields are deterministic."
]
}