nx_uxf_ebml_gate.nx
buildroot/runtime/nx_uxf_ebml_gate.nx
about
nx_uxf_ebml_gate.nx -- the D001 MIGRATION of nx_uxf_ebml_test onto nx_gate_verdict (2026-09-06).
IT DRIVES THE EXTRACTED LIB, NOT A SECOND COPY. nx_uxf_ebml_test carried its own ebml_vint_len,
ebml_read_id and ebml_read_size, byte-for-byte the same logic that now lives in nx_uxf_remux.nx as
uxr_vint_len, uxr_read_id and uxr_read_size. Migrating the test's teeth onto the LIB means the estate
keeps exactly one EBML reader instead of a test copy and a shipping copy that can drift apart -- which is
the duplicate-ruler defect this family already paid for once.
ALL FIVE ORIGINAL TEETH PRESERVED IN PREDICATE, with T2 and T3 split so the VALUE and the CURSOR ADVANCE
are separately falsifiable: the original asserted both inside one conjunction, so a reader that returned
the right number without advancing would have failed without saying which half broke.
license_tier: ORIGINAL No hw writes (Rule 26).
dependencies 3 imports · 0 importers
imports: nx_gate_verdict.nxnx_syscalls.nxnx_uxf_remux.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| 17 | const UE_BUF: i64 = 64 |
| 18 | const UE_EBML_MAGIC: i64 = 440786851 // 0x1A45DFA3, the real EBML document header id |
| 19 | const UE_MAGIC_VINT_LEN: i64 = 4 |
| 20 | const UE_SIZE_VALUE: i64 = 4 |
| 21 | const UE_POS_AFTER_ID: i64 = 4 |
| 22 | const UE_POS_AFTER_SIZE: i64 = 5 |
functions
| 24 | func main(argc: i64, argv: *i64) -> i64 |