code wiki / (root) / nx_shipcheck_gate.nx

nx_shipcheck_gate.nx

buildroot/runtime/nx_shipcheck_gate.nx

13229 B381 linesdepth 3pulls 3 transitivereach 0 importersview sourcekind gate/proof
docsdependenciesstructsconstsfunctions

about

nx_shipcheck_gate.nx -- proves the ship-complete orphan detector's teeth. DOGFOODS the D001 gate base (nx_gate_verdict). Fixtures are INJECTED roots under /tmp so the gate never reads or writes production surfaces; the debt filer tooth INJECTS argecho (F872 pattern) so selftest never writes the production debt plane. Teeth: planted-orphan detection per class (exact counts), clean-fixture NEGATIVE (all zero, GREEN), determinism (two scans byte-equal counts), injectable-filer receipts, clean-fixture files NOTHING. license_tier: ORIGINAL /tmp fixtures only. No hw writes (Rule 26).

dependencies 2 imports · 0 importers

nx_syscalls.nx nx_gate_verdict.nx nx_shipcheck_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 sys_mmap gv_ctr sys_mmap ↻ gv_head gv_puts sys_write gt_resolve_argecho sys_mmap ↻ sys_openat_rd sys_read sys_close gt_le gt_col gt_span_lit gt_len gv_check gv_puts ↻ fx_build sys_mmap ↻ sys_mkdir gt_path2 gt_cat gt_wrel sys_mmap ↻ gt_path2 ↻ gt_wf sys_openat_wr gt_len ↻ sys_write ↻ sys_close ↻ gt_cat ↻ gt_tab gt_nl gt_run sys_mmap ↻ gt_spawn sys_mmap ↻ sys_fork sys_execve

structs

none

consts

11const GT_TAB: i64 = 9
12const GT_NL: i64 = 10
13const GT_HASH: i64 = 35
14const GT_BUF: i64 = 8192
15const GT_LOGB: i64 = 65536
16const GT_PATH: i64 = 1024
17const GT_MODE_F: i64 = 420
18const GT_MODE_D: i64 = 493
19const GT_B256: i64 = 256
20const GT_EXITRED: i64 = 3
21const GT_EXEFAIL: i64 = 127

functions

29func gt_len(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n }
31func gt_cat(d: *u8, o: i64, s: *u8) -> i64
called by 2: gt_path2fx_build
39func gt_tab(d: *u8, o: i64) -> i64 { d[o] = GT_TAB as u8; return o + 1 }
called by 1: fx_build
40func gt_nl(d: *u8, o: i64) -> i64 { d[o] = GT_NL as u8; return o + 1 }
called by 1: fx_build
42func gt_path2(d: *u8, root: *u8, rel: *u8) -> *u8
called by 3: gt_wrelfx_buildgt_load calls 1: gt_cat
50func gt_wf(path: *u8, content: *u8) -> i64
59func gt_wrel(root: *u8, rel: *u8, content: *u8) -> i64
called by 1: fx_build calls 3: sys_mmapgt_path2gt_wf
65func gt_le(b: *u8, i: i64, n: i64) -> i64
72func gt_col(b: *u8, ls: i64, le: i64, want: i64, sp: *i64) -> i64
called by 1: gt_resolve_argecho
88func gt_span_lit(b: *u8, s: i64, e: i64, lit: *u8) -> i64
called by 1: gt_resolve_argecho calls 1: gt_len
96func gt_resolve_argecho() -> i64
130func fx_build(root: *u8, dirty: i64) -> i64
231func gt_spawn(av: *i64) -> i64
245func gt_run(verb: *u8, root: *u8) -> i64
called by 1: main calls 2: sys_mmapgt_spawn
254func gt_runf(root: *u8) -> i64
called by 1: main calls 2: sys_mmapgt_spawn
264func gt_load(root: *u8) -> i64
283func gt_has(sub: *u8) -> i64
called by 1: main calls 1: gt_len
297func gt_findfrom(start: i64, sub: *u8) -> i64
called by 1: gt_t3eq calls 1: gt_len
311func gt_t3eq() -> i64
called by 1: main calls 2: gt_findfromgt_le
330func main(argc: i64, argv: *i64) -> i64