Fuaranfuaran

The source for generative UI

Certification kit

The contract is only real if independent hosts agree byte-for-byte. The conformance kit turns that from a discipline into a gate: implement the wire contract, run the kit over the shared corpus, and get a pass/fail report that names the first differing byte.

The gate – one leg per codec host

The kit pins each codec host to the corpus (which is the F# reference's canonical output). Each leg proves one host equals the corpus; together they prove the hosts equal each other.

LegRunnerProves
A – F#dotnet run --project fuaran-dotnet/src/Fuaran.UI.JsonDecode.Tests -c Releasethe current F# encoder/decoder re-produces the committed corpus byte-for-byte, and every payload is schema-valid ⇒ F# == corpus
B – TypeScriptnode cross-host-conformance.mjsthe TypeScript @fuaran-ui/ops codec re-encodes the corpus byte-identical to the F# form and schema-valid (Draft 2020-12) ⇒ TS == corpus – with generative legs (C/D) round-tripping property-generated trees F#→TS and TS→F#
E – Pythonpython -m pytest in fuaran-py/the fuaran_py codec re-encodes byte-identical, surfaces the canonical reject code + path, and matches the canonical float layout ⇒ Python == corpus
Gothe conformance suite in fuaran-go/conformance/the Go codec round-trips the same corpus byte-identical ⇒ Go == corpus
Rustcargo test (fuaran-rs/tests/conformance.rs)the Rust codec round-trips the same corpus byte-identical ⇒ Rust == corpus

X == corpus for every leg ⟹ F# == TS == Python == Go == Rust, byte-for-byte. A one-byte divergence in any host's encoder fails its leg – naming the fixture, the host, and the first differing byte – so a wire divergence is un-mergeable, not discipline-maintained.

The native Swift and Kotlin surfaces carry no codec leg: they ride the certified Rust codec and are held instead to render-coverage over the node set – see hosts for the surface-kind distinction.

Certifying a new host

The kit is language-agnostic: a third-party host certifies through a small stdio bridge (JSON in / JSON out) and receives the same report the reference hosts do – the Python leg's kit bridge is the worked proof. Implement the codec, decode and re-encode every corpus fixture, assert byte-equality and the expected reject codes, and the kit issues the report.

Certified hosts are listed on the hosts page.