Files
FreeCADWasmDev/docs/current/fem-registration-handoff-pipeline.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

176 lines
7.1 KiB
JSON

{
"schema": "freecad-web-module-batch-pipeline/v1",
"generatedAt": "2026-09-11T21:06:01.175994+00:00",
"status": "implementation_ready",
"implementationMode": "feature-first-deferred-validation",
"validationDeferred": true,
"implementationReceipt": {
"batchId": "fem-elements-deformation-registration-20260912",
"module": "Fem",
"tier": "feature-workflow",
"family": "desktop-command-commands",
"recordIds": [
"Fem:desktop:FEM_ElementFluid1D",
"Fem:desktop:FEM_ElementGeometry1D",
"Fem:desktop:FEM_ElementRotation1D",
"Fem:desktop:FEM_EquationDeformation"
],
"recordCount": 4,
"selectedRecordCount": 4,
"remainingRecordCount": 0,
"status": "implementation_ready",
"validation": "user_during_use",
"target": "FreeCADWebFemGenericFamilyProbe",
"buildTree": "freecad-source/build-web/fem-wasm",
"artifacts": [
"freecad-source/build-web/fem-wasm/bin/FreeCADWebFemGenericFamilyProbe.js",
"freecad-source/build-web/fem-wasm/bin/FreeCADWebFemGenericFamilyProbe.wasm"
],
"source": "outer-build",
"scope": "feature-capability",
"updatedAt": "2026-09-11T21:06:00.282652+00:00"
},
"implementationReceipts": [
{
"batchId": "fem-elements-deformation-registration-20260912",
"module": "Fem",
"tier": "feature-workflow",
"family": "desktop-command-commands",
"recordIds": [
"Fem:desktop:FEM_ElementFluid1D",
"Fem:desktop:FEM_ElementGeometry1D",
"Fem:desktop:FEM_ElementRotation1D",
"Fem:desktop:FEM_EquationDeformation"
],
"recordCount": 4,
"selectedRecordCount": 4,
"remainingRecordCount": 0,
"status": "implementation_ready",
"validation": "user_during_use",
"target": "FreeCADWebFemGenericFamilyProbe",
"buildTree": "freecad-source/build-web/fem-wasm",
"artifacts": [
"freecad-source/build-web/fem-wasm/bin/FreeCADWebFemGenericFamilyProbe.js",
"freecad-source/build-web/fem-wasm/bin/FreeCADWebFemGenericFamilyProbe.wasm"
],
"source": "outer-build",
"scope": "feature-capability",
"updatedAt": "2026-09-11T21:06:00.282652+00:00"
}
],
"coalescedBatchCount": 1,
"staticReadiness": {
"selected": 4,
"ready": 4,
"missing": 0,
"missingIds": [],
"rejectedMarkers": [],
"blockingGaps": [],
"uiContainers": 0,
"uiOnly": false
},
"batchId": "fem-elements-deformation-registration-20260912",
"module": "Fem",
"target": "FreeCADWebFemGenericFamilyProbe",
"buildKind": "native",
"buildTree": "freecad-source/build-web/fem-wasm",
"buildRequired": true,
"buildReuse": {
"reason": "rebuilt",
"cacheHit": false,
"inputDigest": "b987062cb726fa3e7e221e4e8770c2bad5ec3f9b73299eedb5c473247429db90",
"inputHashCacheHits": 0,
"inputFiles": 5,
"artifactHashCacheHits": 0,
"artifacts": 2,
"directLinkDependencies": 104,
"dependencyDirty": false
},
"totalSeconds": 2.815,
"steps": [
{
"name": "module-registry",
"command": [
"/usr/bin/python3",
"tools/generate_web_module_registry.py"
],
"seconds": 0.099,
"exitCode": 0,
"stdout": "{\"output\": \"web/src/module-registry.generated.ts\", \"modules\": 32, \"bytes\": 34296, \"changed\": false}",
"stderr": ""
},
{
"name": "capability-registry",
"command": [
"/usr/bin/python3",
"tools/generate_feature_capability_registry.py"
],
"seconds": 0.086,
"exitCode": 0,
"stdout": "{\"status\": \"reused\", \"modules\": 32, \"commands\": 1449, \"routed\": 961, \"implementationRequired\": 488, \"interactive\": 93, \"genericApiEntry\": 25, \"genericCommandEntry\": 758, \"reactNavigation\": 85, \"needsParameterUi\": 0, \"needsReactWorkflow\": 488, \"artifactModules\": 32, \"validationDeferred\": 1449}",
"stderr": ""
},
{
"name": "preflight",
"command": [
"/usr/bin/python3",
"tools/check_web_link_closure.py",
"freecad-source/build-web/fem-wasm",
"FreeCADWebFemGenericFamilyProbe",
"--json"
],
"seconds": 0.072,
"exitCode": 0,
"stdout": "{\"schema\": \"freecad-web-link-preflight/v1\", \"buildDirectory\": \"freecad-source/build-web/fem-wasm\", \"requestedBuildDirectory\": \"freecad-source/build-web/fem-wasm\", \"target\": \"FreeCADWebFemGenericFamilyProbe\", \"requestedTarget\": \"FreeCADWebFemGenericFamilyProbe\", \"resolvedTarget\": \"FreeCADWebFemGenericFamilyProbe\", \"profile\": \"fast-dev\", \"needsPthread\": false, \"hasPthreadFlag\": false, \"missingArchives\": [], \"runtimePresent\": true, \"wasmPresent\": true, \"errors\": [], \"warnings\": [], \"cacheHit\": false}",
"stderr": ""
},
{
"name": "build",
"command": [
"cmake",
"--build",
"freecad-source/build-web/fem-wasm",
"--target",
"FreeCADWebFemGenericFamilyProbe",
"-j8"
],
"seconds": 0.183,
"exitCode": 0,
"stdout": "[0/2] Re-checking globbed directories...\n[1/4] Generating version_file\ngit\n/home/mes123456/FreeCADWasmDev/working/FreeCAD/freecad-source/build-web/fem-wasm/src/Build/Version.h.out written",
"stderr": ""
},
{
"name": "artifact-sync",
"command": [
"node",
"web/tools/sync-assets.mjs"
],
"seconds": 1.494,
"exitCode": 0,
"stdout": "{\"modules\":32,\"manifest\":\"public/modules/manifest.json\",\"timing\":{\"totalSeconds\":1.4503515559999998,\"copied\":2,\"skipped\":96,\"missing\":18,\"hashComputed\":2,\"hashCacheHits\":186,\"copySeconds\":1.20985315,\"hashSeconds\":0.220609999,\"manifestSeconds\":0.0008510109999999713,\"manifestChanged\":true}}",
"stderr": ""
},
{
"name": "business-audit",
"command": [
"/usr/bin/python3",
"tools/generate_web_business_completion_audit.py"
],
"seconds": 0.881,
"exitCode": 0,
"stdout": "{\"status\": \"generated\", \"verdict\": \"incomplete\", \"featureReceiptBacklog\": 15, \"workbenchCommands\": 471, \"formatWorkflows\": 0, \"productWorkflows\": 0}",
"stderr": ""
}
],
"supportHashes": {
"freecad-source/src/WebAssembly/FreeCADCoreProbe/FemDesktopCommands.cpp": "e5602b741b707d2855e8b148540e8fa09b556785836b457ab473803d410f7dc5",
"freecad-source/src/WebAssembly/FreeCADCoreProbe/FemGenericFamilyProbe.cpp": "e9d2f7e7c7049b81f84410b924841f4258ce051e3d61cdfc0f6fca55ec0a4366",
"freecad-source/src/WebAssembly/FreeCADCoreProbe/FemDesktopCommands.h": "80f53f92fcfc20e229fa883e6fde8d0521f92e93f4854e08542f26c1b6e27ada",
"web/src/fem-desktop-adapter.ts": "29bbe69c7ebd2b3454e3f8a209500c6bdf40fad1fc02919886b56edd8dc11663",
"web/src/workbench-shell.tsx": "224f3a412f4da52c11007c0847f77125ea8778ca82880979bb7e1be6e090418e",
"web/src/desktop-command-dispatcher.ts": "8c43145cbf03281d6f875654e021e781234b37522aedd737a79ffde988fd7fe6",
"web/src/fem-python-family-facade.ts": "4bd5d2dac81d7d5d55673ce7a3dc1add0a0ac915c31c4e59cd0472d2dc28850c",
"web/src/fem.worker.ts": "2ecd5cdf3da17c9ace0136b86374d089beb802d1d6137003edaebd7db039b7c2"
}
}