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

50 lines
1.8 KiB
JSON

{
"schema": "freecad-web-p6-assembly-persistence/v1",
"module": "Assembly",
"action": "save/reopen",
"result": "pass",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"fixture": {
"document": "AssemblyPersistence",
"objectName": "Assembly",
"objectType": "Assembly::AssemblyObject",
"type": "Assembly",
"format": ".fcstd"
},
"save": {
"path": "/tmp/AssemblyKernel.FCStd",
"size": 2070,
"archiveSha256": "90269cc4f816055d831ef40fa9f531208dc4cfd964afe18862187ee82a344689",
"zipTest": "pass"
},
"opened": {
"documentCount": 1,
"objectCount": 9,
"objectType": "Assembly::AssemblyObject",
"typeProperty": "Assembly",
"recomputeCount": 0,
"hasError": 0,
"roundTrip": true
},
"stateIntegrity": {
"beforeClose": "Assembly::AssemblyObject|Assembly|9",
"afterReopen": "Assembly::AssemblyObject|Assembly|9",
"equal": true,
"emptyAssemblyRecomputeNoOp": true
},
"evidence": {
"buildLog": "docs/freecad-p6-asm-g-build.log",
"smokeLog": "docs/freecad-p6-asm-g-smoke.log",
"createRegression": "docs/freecad-p6-asm-c-smoke-r4.log",
"recoveryRegression": "docs/freecad-p6-asm-d-smoke.log",
"wasmSha256": "d1de3b087e514189031c210e59eba6aaa758756daba68b6bc78458cbb5f10080",
"jsSha256": "f7fc7baad5b27089483d89f1da09f345aef841886bf9fccd2b411d1dfce37a9d"
},
"commands": [
"EM_CACHE=/tmp/freecad-p6-emcache EM_FROZEN_CACHE= ninja -C build-web/assembly-configure FreeCADWebAssemblyKernelProbe -j8",
"node src/WebAssembly/FreeCADCoreProbe/assembly-kernel-smoke.js build-web/assembly-configure/bin persistence",
"unzip -t build-web/assembly-configure/bin/AssemblyKernel.FCStd"
],
"boundary": "Assembly save/reopen is validated for an empty Assembly object; cross-version migration, GUI document and multi-component serialization remain out of scope."
}