Files
linuxcncWebWASM/scripts/test_xyzac_trt_wasm_authority_audit.py

56 lines
2.8 KiB
Python

#!/usr/bin/env python3
"""Test the XYZAC WASM-only authority audit within the selected simulation scope."""
from __future__ import annotations
import hashlib
import json
import subprocess
import unittest
from pathlib import Path
ROOT = Path(__file__).resolve().parents[1]
REPORT = ROOT / "coverage/xyzac-trt-wasm-authority-audit.report.json"
class XyzacWasmAuthorityAuditTest(unittest.TestCase):
@classmethod
def setUpClass(cls):
subprocess.run(["python3", "scripts/generate_xyzac_trt_wasm_authority_audit.py"], cwd=ROOT, check=True, stdout=subprocess.PIPE, text=True)
cls.report = json.loads(REPORT.read_text(encoding="utf-8"))
def test_selected_authority_boundary(self):
self.assertEqual(self.report["schema"], "xyzac-trt-wasm-authority-audit.v1")
self.assertEqual(self.report["task_id"], "WASM-00")
self.assertEqual(self.report["status"], "verified")
self.assertEqual(self.report["candidate_eligible"], True)
self.assertEqual(self.report["release_status"], "STOP_RELEASE")
self.assertEqual(self.report["checks"]["js_authority_boundary"]["status"], "verified")
self.assertEqual({row["status"] for row in self.report["js_authority_findings"]}, {"resolved_selected_case"})
self.assertEqual(self.report["blockers"], [])
self.assertEqual({row["status"] for row in self.report["accepted_scope_exclusions"]}, {"accepted_scope_exclusion"})
self.assertIn("SAFARI_NOT_REQUIRED", {row["code"] for row in self.report["accepted_scope_exclusions"]})
def test_worker_trace_and_scans(self):
self.assertEqual(self.report["worker_evidence"]["status"], "verified")
self.assertEqual(self.report["worker_evidence"]["case"], self.report["case"]["path"])
self.assertEqual(self.report["worker_evidence"]["motion_authority"], "wasm")
self.assertEqual(self.report["first_divergent_tick"], None)
self.assertEqual(self.report["checks"]["react_no_direct_wasm_pointer"]["status"], "verified")
self.assertEqual(self.report["checks"]["react_no_direct_opfs_writer"]["status"], "verified")
self.assertTrue(self.report["scans"]["opfs_writer_matches"])
self.assertEqual({row["status"] for row in self.report["browser_evidence"]}, {"verified"})
self.assertEqual({row["status"] for row in self.report["authority_matrix"].values()}, {"verified"})
def test_self_hash(self):
unsigned = dict(self.report)
actual = unsigned.pop("report_sha256")
expected = hashlib.sha256(json.dumps(unsigned, ensure_ascii=False, sort_keys=True, separators=(",", ":")).encode()).hexdigest()
self.assertEqual(actual, expected)
self.assertEqual(self.report["checks"]["report_self_hash"]["status"], "verified")
if __name__ == "__main__":
unittest.main()