Complete XYZAC LinuxCNC WASM parity and smooth 3D preview

This commit is contained in:
2026-08-28 06:24:50 +08:00
parent e8fe323aab
commit 1a7995fa9b
181 changed files with 36854 additions and 215 deletions

View File

@@ -0,0 +1,40 @@
#!/usr/bin/env python3
import hashlib
import json
import subprocess
import unittest
from pathlib import Path
ROOT = Path(__file__).resolve().parents[1]
REPORT = ROOT / "coverage/xyzac-trt-trace-parity.report.json"
class XyzacParityTest(unittest.TestCase):
@classmethod
def setUpClass(cls):
subprocess.run(["python3", "scripts/compare_xyzac_native_wasm_trace.py"], cwd=ROOT, check=True)
cls.report = json.loads(REPORT.read_text(encoding="utf-8"))
def test_verified(self):
self.assertEqual(self.report["status"], "verified")
self.assertEqual(self.report["native_wasm"]["status"], "verified")
self.assertEqual(self.report["native_worker"]["status"], "verified")
self.assertEqual(self.report["first_divergent_tick"], None)
for comparison in ("native_wasm", "native_worker"):
for level in ("protocol", "control", "state", "canonical", "recovery"):
self.assertEqual(self.report[comparison]["levels"][level]["status"], "verified")
def test_first_divergence_positive_sample(self):
sample = self.report["positive_divergence_sample"]
self.assertTrue(sample["detected"])
self.assertEqual(sample["first_divergent_tick"], 2)
self.assertEqual(sample["difference_path"], "$[1].active_type")
def test_self_hash(self):
unsigned = dict(self.report)
actual = unsigned.pop("report_sha256")
self.assertEqual(actual, hashlib.sha256(json.dumps(unsigned, ensure_ascii=False, sort_keys=True, separators=(",", ":")).encode()).hexdigest())
if __name__ == "__main__":
unittest.main()