Files
FreeCADWasmDev/docs/p6/cam-action-03-recovery.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

149 lines
4.4 KiB
JSON

{
"schema": "freecad-web-p6-cam-action-03-recovery/v1",
"task_id": "FW-P6-CAM-ACT-03-D",
"module": "CAM",
"action": "inspect/source-inventory",
"status": "pass",
"invalid_input": {
"sourceRevision": "wrong-revision",
"input_sha256": "5f4641794d09e6fe4e939c261662ba1c11f397d2fc054cbe94ec6aefb1e8e173"
},
"result": {
"baseline": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "cam-action-03-before",
"result": {
"schema": "freecad-web-cam/inspect-source-inventory/v1",
"module": "CAM",
"action": "inspect/source-inventory",
"sourceRevision": "b5a086fda59b0325fe0996147e6e9b344414f9bc",
"currentSourceRevision": "b5a086fda59b0325fe0996147e6e9b344414f9bc",
"sourceEntry": "src/Mod/CAM/Init.py",
"registeredTypes": [
"Path::Area",
"Path::Command",
"Path::Feature",
"Path::FeatureArea",
"Path::FeatureAreaView",
"Path::FeatureShape",
"Path::PropertyPath",
"Path::Toolpath",
"Path::Voronoi",
"Path::VoronoiCell",
"Path::VoronoiEdge",
"Path::VoronoiVertex"
],
"formatExtensions": [
".fcstd",
".json",
".obj",
".step",
".svg"
],
"objectTypeCount": 12,
"pythonApiCount": 2883,
"dependencies": [
"Part",
"area-native",
"FreeCADApp"
],
"guiExcluded": [
"FreeCADGui",
"PySide",
"pivy.coin"
],
"readOnly": true,
"stateSha256": "d9e12b91480c9117a9a93b2d6ebc5a8ca08d4c4f6a4a36ff1f6e70f23cbaac44"
}
},
"rejected": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "cam-action-03-invalid",
"error": {
"code": "revision_mismatch",
"message": "CAM source revision is not locked",
"diagnostic": {
"sourceRevision": "wrong-revision"
}
}
},
"repeatedReject": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "cam-action-03-invalid-2",
"error": {
"code": "revision_mismatch",
"message": "CAM source revision is not locked",
"diagnostic": {
"sourceRevision": "wrong-revision"
}
}
},
"recovered": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "cam-action-03-after",
"result": {
"schema": "freecad-web-cam/inspect-source-inventory/v1",
"module": "CAM",
"action": "inspect/source-inventory",
"sourceRevision": "b5a086fda59b0325fe0996147e6e9b344414f9bc",
"currentSourceRevision": "b5a086fda59b0325fe0996147e6e9b344414f9bc",
"sourceEntry": "src/Mod/CAM/Init.py",
"registeredTypes": [
"Path::Area",
"Path::Command",
"Path::Feature",
"Path::FeatureArea",
"Path::FeatureAreaView",
"Path::FeatureShape",
"Path::PropertyPath",
"Path::Toolpath",
"Path::Voronoi",
"Path::VoronoiCell",
"Path::VoronoiEdge",
"Path::VoronoiVertex"
],
"formatExtensions": [
".fcstd",
".json",
".obj",
".step",
".svg"
],
"objectTypeCount": 12,
"pythonApiCount": 2883,
"dependencies": [
"Part",
"area-native",
"FreeCADApp"
],
"guiExcluded": [
"FreeCADGui",
"PySide",
"pivy.coin"
],
"readOnly": true,
"stateSha256": "d9e12b91480c9117a9a93b2d6ebc5a8ca08d4c4f6a4a36ff1f6e70f23cbaac44"
}
}
},
"recovery": {
"unchanged_after_reject": true,
"repeated_error_stable": true
},
"commands": [
"npx tsc --target ES2022 --module ESNext --moduleResolution Bundler --strict --skipLibCheck --outDir /tmp/freecad-p6-cam-action-03 --declaration false --noEmit false src/facade-envelope.ts src/cam-inspect-facade.ts",
"node tools/run_p6_cam_action03_recovery_smoke.mjs /tmp/freecad-p6-cam-action-03/cam-inspect-facade.js"
],
"boundaries": [
"Only locked source revision mismatch is covered; no resource-missing or mutation path is included."
]
}