{ "schemaVersion": 1, "status": "pass", "browserId": "chrome", "crossOriginIsolated": true, "capabilities": { "openCamLib": { "status": "available", "backend": "upstream-opencamlib-wasm", "sourceRevision": "95b036fe28ce6d77c97b98e5fbc337904ae49560", "artifactSha256": "30ca7dd307a131f9df66288d530c3fbacf155f375f83a2d733c5c00a85a712e0", "algorithms": [ "path-drop-cutter", "adaptive-path-drop-cutter", "waterline", "adaptive-waterline" ] }, "solidRemoval": { "status": "available", "backend": "bitbybit-occt-wasm", "model": "sampled-flat-end-brep", "nativeSolid": true, "freeCadNativeEquivalent": false, "sweepModes": [ "sampled-flat-end", "continuous-segment" ] }, "camotics": { "status": "native-host-available", "backend": "camotics-native-host-qt5-tpl", "sourceRevision": "e84665f2fa9d1151f03282ac7e01320bc65e015b", "cbangRevision": "9b6672a0e2b800a909d799ffa3ab46774cf171b8", "sourcePaths": [ "CAMotics/src/gcode/machine/GCodeMachine.cpp", "CAMotics/src/tplang/GCodeModule.cpp", "CAMotics/src/camotics/sim/ToolSweep.cpp" ], "workspaceNativeExecutable": true, "nativeGuiPath": "CAMotics/camotics", "nativeTplPath": "CAMotics/tplang", "nativeArtifactEvidence": "config/camotics-native-artifact.json", "browserExecutable": false, "browserWasmKernelExecutable": true, "nativeCliPath": "CAMotics/camsim", "wasmKernel": { "backend": "camotics-upstream-sweep-wasm", "artifactSha256": "889588d2dc9755f84f56b8ebe1acc9bc1f0ded7e676e162a5a001011f4ebec5b", "scope": [ "conic-sweep", "spheroid-sweep", "sweep-bounding-boxes" ], "fullCamoticsProgram": false, "gcodeParserIncluded": false }, "generationAuthority": "camotics-source-stage", "parserAuthority": "linuxcnc-wasm", "camoticsParsesCanonicalGcode": false, "reason": "CAMotics 1.3 native Qt5 GUI and TPL compiler are workspace-verified host sidecars with pinned C! 1.7.2 and V8 ABI settings. The browser executes a standalone upstream Conic/Spheroid sweep WASM subset, not the native ELF, Qt GUI, TPL compiler, or full program; browser G-code generation preserves source-stage motion semantics and sends canonical G-code to LinuxCNC WASM." } }, "openCamLib": { "backend": "upstream-opencamlib-wasm", "sourceRevision": "95b036fe28ce6d77c97b98e5fbc337904ae49560", "artifactSha256": "30ca7dd307a131f9df66288d530c3fbacf155f375f83a2d733c5c00a85a712e0", "triangles": 2, "points": 14, "minimumZ": 2, "maximumZ": 2, "deterministic": true }, "camotics": { "backend": "camotics-source-stage-contract", "sourceRevision": "e84665f2fa9d1151f03282ac7e01320bc65e015b", "nativeExecutable": false, "lineCount": 18, "gcodeBytes": 164, "gcodeHash": "0a7731201c19564c7b00950ee6432b4201918811a70b00db501a3663750fb792", "parserAuthority": "linuxcnc-wasm", "camoticsParsesCanonicalGcode": false }, "pipeline": { "stages": [ "cad", "opencamlib-wasm", "camotics-source-stage", "gcode", "linuxcnc-wasm-parse-execute" ], "canonicalGcodeAuthority": "linuxcnc-wasm", "camoticsSemanticParser": false, "linuxcncWasmExecution": "handoff-required" }, "solidRemoval": { "backend": "bitbybit-occt-wasm", "model": "sampled-flat-end-brep", "sweepMode": "sampled-flat-end", "nativeSolid": true, "freeCadNativeEquivalent": false, "sampleCount": 7, "stockVolume": 299.99999999999994, "removedVolume": 12, "remainingVolume": 287.99999999999994, "structuralValid": true, "solids": 1, "meshVertices": 48, "meshTriangles": 28, "brepBytes": 4885, "brepHash": "76237c323f4614488e527b92c9ad7e3d8b6b5db968b5d7a481da26da59fe00be" }, "curvedSolidRemoval": { "backend": "bitbybit-occt-wasm", "model": "continuous-segment-sweep-brep", "sweepMode": "continuous-segment", "sampleCount": 13, "stockVolume": 299.99999999999994, "removedVolume": 13.876647806980372, "remainingVolume": 286.12335219301957, "structuralValid": true, "solids": 1, "meshVertices": 506, "meshTriangles": 652 }, "afterRelease": { "shapeCount": 0, "kernelReferenceCount": 0 }, "browser": { "product": "Chrome/150.0.7871.128", "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/150.0.0.0 Safari/537.36" } }