code wiki / (root) / nx_donor_texm_gate.nx

nx_donor_texm_gate.nx

buildroot/runtime/nx_donor_texm_gate.nx

8161 B172 linesdepth 3pulls 3 transitivereach 0 importersview sourcekind gate/proof
docsdependenciesstructsconstsfunctions

about

nx_donor_texm_gate.nx -- THE DONOR-SURFACE GATE: authored FBX materials carried into TEXC+TEXM on ALL FOUR Fab donors, proven on the live artifacts (never fixtures standing in for them). Subject: knowledge/rigcorpus/{dark_witch,paladin,dark_knight,toon3d8}_rigged.nxa as written by nx_fbx_texm. Proves, per donor: (1) TEXC exists and its row count EQUALS the VERT count -- the desync refusal held; (2) TEXM exists, declares 4 map records, albedo is record 0, non-empty, a REAL PNG, with entropy above the constant-color floor (a scalar-flood atlas cannot pass); (3) the UV set is non-degenerate (u-spread) and spans >= 2 charts. Neg-control: the banked PRE-TEXM donor (knowledge/bank/) must FAIL the presence tooth -- a gate that cannot fire on the pre-fix artifact has not been shown to fire. The donor count is bound IN the conditions (4 of 4), so the empty set cannot pass.

dependencies 2 imports · 0 importers

nx_syscalls.nx nx_gate_verdict.nx nx_donor_texm_gate.nx

imports: nx_syscalls.nxnx_gate_verdict.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main gv_ctr sys_mmap nxa_die sys_write sys_exit nxa_lock_take nxa_lock_addr sys_write ↻ nxa_lock_give nxa_lock_addr ↻ nxa_report_overrun sys_write ↻ nxa_dump_printable sys_write ↻ nxa_dump_sizes sys_write ↻ gv_head gv_puts sys_write ↻ gv_puts ↻ dtg_measure sys_mmap ↻ sys_read_file sys_openat_rd sys_lseek sys_mmap ↻ sys_read sys_munmap sys_close gv_puts ↻ dtg_rd64 dtg_sec dtg_rd64 ↻ dtg_tag4 gv_num sys_mmap ↻ sys_write ↻ sys_munmap ↻ gv_check

structs

none

consts

17const DTG_NDONOR: i64 = 4
18const DTG_A1: *u8 = "knowledge/rigcorpus/dark_witch_rigged.nxa"
19const DTG_A2: *u8 = "knowledge/rigcorpus/paladin_rigged.nxa"
20const DTG_A3: *u8 = "knowledge/rigcorpus/dark_knight_rigged.nxa"
21const DTG_A4: *u8 = "knowledge/rigcorpus/toon3d8_rigged.nxa"
22const DTG_BANKED: *u8 = "knowledge/bank/dark_witch_rigged.nxa.pretexm-20260823"
24const DTG_HDR: i64 = 32
25const DTG_TOCE: i64 = 32
26const DTG_TM_HDRW: i64 = 6
27const DTG_TM_RECW: i64 = 3
28const DTG_NMAPS: i64 = 4
29const DTG_RES_MIN: i64 = 8 // one PNG filter block, the same floor nx_nxa_texm enforces
30const DTG_PNG0: i64 = 137
31const DTG_PNG1: i64 = 80
32const DTG_PNG2: i64 = 78
33const DTG_PNG3: i64 = 71
36const DTG_ENTROPY_MIN_BYTES: i64 = 65536
37const DTG_USPREAD_MIN_PERMIL: i64 = 500 // spread must cover over half the Q16 axis
38const DTG_Q16: i64 = 65536

functions

40func dtg_rd64(b: *u8, off: i64) -> i64
called by 2: dtg_secdtg_measure
46func dtg_tag4(s: *u8) -> i64
called by 1: dtg_sec
49func dtg_sec(b: *u8, ns: i64, t: *u8, poff: *i64, pwords: *i64) -> i64
called by 1: dtg_measure calls 2: dtg_rd64dtg_tag4
66func dtg_measure(path: *u8) -> i64
134func main() -> i64