code wiki / _hdl_build / nx_packmirror_gate.nx

nx_packmirror_gate.nx

buildroot/runtime/_hdl_build/nx_packmirror_gate.nx

10116 B144 linesdepth 3pulls 4 transitivereach 0 importersview sourcekind gate/proof
docsdependenciesstructsconstsfunctions

about

nx_packmirror_gate.nx -- prove the pack-manifest parse core: files counted, folders never miscounted, missing fields honest, traversal structurally neutralized, size-verify both polarities. Fixtures are ASSEMBLED AT RUNTIME (the fixture law: a source-scanning detector must never find its own trap in prose) and gate scratch lives under /tmp/packmirrorgate/ (the fixture-ratchet law: never beside production data). license_tier: ORIGINAL No hw writes (Rule 26).

dependencies 3 imports · 0 importers

nx_syscalls.nx nx_gate_verdict.nx nx_packmirror_lib.nx nx_packmirror_gate.nx

imports: nx_syscalls.nxnx_gate_verdict.nxnx_packmirror_lib.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 ↻ sys_mmap ↻ pg_s pg_n sys_mmap ↻ pm_parse_manifest pm_findn pm_int_after pm_b pm_rfindn pm_findn ↻ pm_b ↻ pm_sanitize pm_b ↻ pg_eq gv_check gv_puts ↻ sys_mkdir sys_openat_wr sys_write ↻ sys_close

structs

none

consts

13const PG_BUF: i64 = 4096 // gate scratch buffer for runtime-assembled manifests
14const PG_FILE_A_SIZE: i64 = 1234 // T1 first file's declared size
15const PG_TIM_A: i64 = 1787000000000001 // T6 first media post's tim (a 4chan microsecond stamp shape)
16const PG_TIM_A_FSIZE: i64 = 4321 // T6 first media post's fsize

functions

18func pg_s(b: *u8, at: i64, s: *u8) -> i64 { var i: i64 = 0; var p: i64 = at; while s[i] != (0 as u8) { b[p] = s[i]; p = p + 1; i = i + 1 } return p }
called by 1: main
20func pg_n(b: *u8, at: i64, v: i64) -> i64
called by 1: main calls 1: sys_mmap
31func pg_eq(a: *u8, b: *u8) -> i64 { var i: i64 = 0; while a[i] != (0 as u8) { if a[i] != b[i] { return 0 } i = i + 1 } if b[i] != (0 as u8) { return 0 } return 1 }
called by 1: main
33func main(argc: i64, argv: *i64) -> i64