Files
FreeCADWasmDev/docs/p6/sketcher-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

70 lines
2.2 KiB
JSON

{
"schema": "freecad-web-p6-sketcher-action-04-persistence/v1",
"taskId": "FW-P6-SKT-ACT-04-G",
"module": "Sketcher",
"action": "save/reopen",
"result": "pass",
"applicable": true,
"format": "FCStd",
"path": "/tmp/SketcherWeb.FCStd",
"objectType": "Sketcher::SketchObject",
"geometryCount": 1,
"constraintCount": 1,
"shapeMaterialRestore": {
"result": true,
"mode": "web-default-material-with-persisted-uuid",
"propertyType": "Materials::PropertyMaterial"
},
"roundTrip": true,
"resourcesReleased": true,
"replay": {
"semanticDeterministic": true,
"archiveSizeStable": false,
"archiveSizeBoundary": "FCStd ZIP metadata timestamps may change archive size by a few bytes"
},
"recovery": {
"invalidRestoreRejected": true,
"error": "Unable to open project file",
"unchangedAfterReject": true,
"validRestoreRecovered": true
},
"contracts": {
"C": {
"result": "pass",
"sha256": "5533b19540ab3ff35c2636bdc7b34e87219f7620e4d6a22b25f6fd6571dbe9be"
},
"D": {
"result": "pass",
"sha256": "056370258a87737451814b2dcbc1f62ad2870e16b19c183684c3c45ef607ea63"
},
"E": {
"result": "pass",
"sha256": "b54ebd8a70c7e032d522d1328fbcfb385267160e69c32f627f03cea3558a4dbf"
},
"F": {
"result": "pass",
"sha256": "87e9d7202aef374348d91a491e4f9a93123b1d4bf3eac8b7bc5620a3b26659e8"
}
},
"state": {
"externalRequests": 0,
"runtimeExceptions": 0,
"maxActive": 1
},
"artifacts": {
"kernel": "docs/p6/sketcher-action-04-kernel-r1-success.json",
"recovery": "docs/p6/sketcher-action-04-recovery.json",
"facade": "docs/p6/sketcher-action-04-facade.json",
"chrome": "docs/p6/sketcher-action-04-chrome.json",
"screenshot": "docs/p6/sketcher-action-04-chrome.png"
},
"commands": [
"node tools/run_p6_sketcher_action04_persistence.mjs"
],
"boundaries": [
"One Sketcher::SketchObject fixture with one line and one horizontal constraint is covered.",
"GUI-free Web restores ShapeMaterial UUID into an explicit default material; desktop MaterialManager lookup remains unchanged.",
"Cross-version migration and arbitrary Sketcher object graphs remain out of scope."
]
}