120 lines
4.7 KiB
JSON
120 lines
4.7 KiB
JSON
{
|
|
"schema": "freecad-web-p6-sandbox-runtime/v1",
|
|
"taskId": "FW-P6-SDB-B",
|
|
"module": "Sandbox",
|
|
"result": "pass",
|
|
"sourceRevision": "0644133717ebc04fae2194bb5ef9eec06880f909",
|
|
"configuration": {
|
|
"freecadWeb": true,
|
|
"freecadWebEnableSandbox": true,
|
|
"buildSandbox": true,
|
|
"buildMesh": true,
|
|
"buildGui": false,
|
|
"target": "FreeCADWebSandboxRuntimeProbe",
|
|
"directLinkLibraries": ["Sandbox", "Mesh", "Python3", "PyCXX", "Qt5::Core", "Qt5::Xml"],
|
|
"guiTargetLinked": false,
|
|
"cmakeCacheSha256": "874621555ff4ddabfedf977f4e1ca4586c75061a8bb87711b5e106471a32e37e",
|
|
"buildNinjaSha256": "142e1262b42bfa19fdc5e426732c6970e9920f0e8afff6e2ccaa6b6433195d7d"
|
|
},
|
|
"inputs": {
|
|
"sourceBoundary": {
|
|
"path": "docs/p6/sandbox-source-boundary.json",
|
|
"sha256": "306d78585fa4e0953077948c745694690ff7f049b44da9d7efe0ab8d760d8273"
|
|
},
|
|
"moduleLoader": {
|
|
"path": "docs/p6/module-loader.json",
|
|
"sha256": "db979388d127add56e5241686645fbbb2d117f241abd67746bbcd30352a35eaf"
|
|
},
|
|
"moduleLoaderSchema": {
|
|
"path": "docs/p6/module-loader.schema.json",
|
|
"sha256": "cb1bb0289d4a62882316846d2ceaec94ad89d13b7a78dfeaa1ae69a4c03f2602"
|
|
}
|
|
},
|
|
"commands": [
|
|
"cmake -S . -B build-web/configure -DFREECAD_WEB_ENABLE_SANDBOX=ON",
|
|
"EM_CONFIG=$PWD/build-web/emscripten-config.py env -u EM_FROZEN_CACHE ninja -C build-web/configure FreeCADWebSandboxRuntimeProbe -j8",
|
|
"node src/WebAssembly/FreeCADCoreProbe/sandbox-runtime-smoke.js build-web/configure/bin",
|
|
"llvm-nm --undefined-only build-web/configure/bin/FreeCADWebSandboxRuntimeProbe.wasm"
|
|
],
|
|
"registrationResult": {
|
|
"initialize": 1,
|
|
"type": 1,
|
|
"typeName": "Sandbox::SandboxObject",
|
|
"moduleVisible": 1,
|
|
"stateAfterValid": {
|
|
"calls": 2,
|
|
"runs": 1,
|
|
"initialized": 1
|
|
},
|
|
"repeatInitialize": 1,
|
|
"repeatType": 1,
|
|
"stateAfterRepeat": {
|
|
"calls": 4,
|
|
"runs": 1,
|
|
"initialized": 1
|
|
},
|
|
"unknownModule": 0,
|
|
"unknownModuleError": {
|
|
"code": "module_unavailable",
|
|
"message": "module is not available in the GUI-free Web kernel: Missing"
|
|
},
|
|
"guiModule": 0,
|
|
"guiModuleError": {
|
|
"code": "gui_dependency_unavailable",
|
|
"message": "module is not available in the GUI-free Web kernel: SandboxGui"
|
|
},
|
|
"emptyModule": 0,
|
|
"emptyModuleError": {
|
|
"code": "invalid_argument",
|
|
"message": "module name is empty"
|
|
},
|
|
"unknownType": 0,
|
|
"unknownTypeError": {
|
|
"code": "type_not_found",
|
|
"message": "type is not registered: Sandbox::Missing"
|
|
},
|
|
"stateAfterErrors": {
|
|
"calls": 5,
|
|
"runs": 1,
|
|
"initialized": 1
|
|
}
|
|
},
|
|
"symbolAudit": {
|
|
"undefinedWasmSymbols": [],
|
|
"guiTargetLinked": false,
|
|
"guiModuleInitialized": false,
|
|
"auditCommand": "llvm-nm --undefined-only build-web/configure/bin/FreeCADWebSandboxRuntimeProbe.wasm"
|
|
},
|
|
"artifacts": {
|
|
"js": "freecad-source/build-web/configure/bin/FreeCADWebSandboxRuntimeProbe.js",
|
|
"jsSha256": "089623fe48380c839d3132f5776d5ba3836ebcc08361e4aa5e2a7a2cc9081ca8",
|
|
"wasm": "freecad-source/build-web/configure/bin/FreeCADWebSandboxRuntimeProbe.wasm",
|
|
"wasmSha256": "3614db98e0424ec6b2fc70c73f7dfdc71dfceb8f121bc7dfb487f89ae9de2e6a",
|
|
"sourceProbeSha256": "a36a27c0ab2dbec7af39766a08e559fa32e537f1d7a9a47d6ac37f016ad934d7",
|
|
"smokeSha256": "92e357718bfb2818bb73cfd5984bce46f712ccdbc42c37d960ae138bab0335a0",
|
|
"buildLog": "docs/freecad-p6-sandbox-b-build-r2.log",
|
|
"smokeLog": "docs/freecad-p6-sandbox-b-smoke.log"
|
|
},
|
|
"recovery": {
|
|
"firstFailure": {
|
|
"log": "docs/freecad-p6-sandbox-b-build.log",
|
|
"error": "Base/Mutex.h not found; SandboxAppExport undefined; Qt thread feature unavailable"
|
|
},
|
|
"r1Failure": {
|
|
"log": "docs/freecad-p6-sandbox-b-build-r1.log",
|
|
"error": "Emscripten bzip2 port attempted to write /usr/share/emscripten/cache/ports without permission"
|
|
},
|
|
"r2Recovery": {
|
|
"log": "docs/freecad-p6-sandbox-b-build-r2.log",
|
|
"result": "pass",
|
|
"action": "Used the existing writable absolute EM_CONFIG and preserved prior failure logs."
|
|
}
|
|
},
|
|
"boundaries": [
|
|
"The probe initializes the native Sandbox App module and queries the native SandboxObject type; JS only calls the exported C ABI and validates the result.",
|
|
"SandboxGui is intentionally excluded; GUI dependency rejection is tested as a structured error.",
|
|
"This B card covers registration and dependency closure only; Sandbox create/recompute, recovery action, Facade, Chrome, and persistence remain separate cards.",
|
|
"The source-boundary input was captured before the B-card Web opt-in change; this runtime report records the updated configuration explicitly."
|
|
]
|
|
}
|