feat: establish reproducible FreeCAD web compatibility baseline
This commit is contained in:
134
config/chrome-cam-native-simulation-verification.json
Normal file
134
config/chrome-cam-native-simulation-verification.json
Normal file
@@ -0,0 +1,134 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"status": "pass",
|
||||
"browserId": "chrome",
|
||||
"crossOriginIsolated": true,
|
||||
"capabilities": {
|
||||
"openCamLib": {
|
||||
"status": "available",
|
||||
"backend": "upstream-opencamlib-wasm",
|
||||
"sourceRevision": "95b036fe28ce6d77c97b98e5fbc337904ae49560",
|
||||
"artifactSha256": "0379040910f7af277c6e1f6411efb549292db0b071422a83954d93631253bf89",
|
||||
"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": "0379040910f7af277c6e1f6411efb549292db0b071422a83954d93631253bf89",
|
||||
"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"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user