Skip to content

01 · Client-side Verification Wrapper

Theme 01 · Client-side wrapper · data: synthetic · reimagines MET core + METcalcpy

The founding experiment: can MET’s documented verification methods run entirely client-side? It renders a live 2×2 contingency table, the full categorical suite (POD, FAR, POFD, SR, CSI, GSS/ETS, HSS, PSS/HK, FBIAS, ORSS) and continuous stats (ME, MAE, MSE, RMSE, BCRMSE, r) over synthetic matched pairs, with a per-stat MET-fidelity formula table, a SQL-like query panel, and drag-drop CSV ingestion.

apps/client-side-wrapper/
index.html entry
js/main.js UI wiring
js/stats.js thin adapters over lib/met-stats.mjs
js/contingency.js 2×2 cell derivation
js/query.js compiled query panel
js/fidelity.js per-stat formula/fidelity table
js/diagrams/ performance + reliability diagrams
data/ synthetic matched pairs (CSV + embedded module)
  • 29/29 formula self-checks; migrated to the shared lib with 2,574 bit-for-bit old-vs-new checks (0 mismatches).
  • Real-data wiring is last in the blueprint’s sequencing: it is the only app that needs per-pair values, and reconstructing pairs from SL1L2 partial sums is underdetermined — the plan is to synthesize pairs behind an explicit parity test (blueprint §6 Q1).
  • Single-file build: dist/client-side-wrapper.html (~500 KB).