code wiki / (root) / nx_gen_ui_gate.nx

nx_gen_ui_gate.nx

buildroot/runtime/nx_gen_ui_gate.nx

7642 B157 linesdepth 5pulls 6 transitivereach 0 importersview sourcekind gate/prooftopic gen
docsdependenciesstructsconstsfunctions

about

nx_gen_ui_gate.nx -- the REFEREE for gen G19 (nx_gen_ui_emit): the /gen companion page is EMITTED from data, deterministic, behaviourally complete, fail-closed on a missing key, and THE SERVED FILE IS THE EMITTED FILE. DONE-RULE (gen.plan G19): two emits from the live conf are byte-identical; the page carries every required behaviour marker; a conf missing a key REFUSES by name and writes nothing; the bytes at the daemon's served path equal the emitted bytes (so a hand edit to the served page is a RED, never a silent fork of the design). FIXTURE LAW: scratch under /tmp/<gate>/, cleared at SETUP; the neg-control conf is DERIVED from the live conf at run time (never a checked-in fixture a scanner could find), and a tooth asserts the fixture reached its condition. license_tier: ORIGINAL expect_exit: 0

dependencies 3 imports · 0 importers

nx_syscalls.nx nx_gate_verdict.nx nx_tool_run.nx nx_gen_ui_gate.nx

imports: nx_syscalls.nxnx_gate_verdict.nxnx_tool_run.nx

imported by: nobody (leaf or entry point)

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

main gv_head gv_puts sys_write 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 ↻ sys_mkdir sys_unlinkat ug_run sys_mmap ↻ tr_run_capture_to tr_run_capture_tr tr_run_capture_core tr_run_capture_core_owned tr_run_capture_core_eviden sys_mmap ↻ sys_read_file sys_openat_rd sys_lseek sys_mmap ↻ sys_read sys_munmap sys_close gv_check gv_puts ↻ ug_same

structs

none

consts

13const UG_ELF: *u8 = "/volume1/homes/elderwesto/nishihost/nx_gen_ui_emit.elf" as *u8
14const UG_CONF: *u8 = "/volume1/homes/elderwesto/nishihost/knowledge/gen_ui.conf" as *u8
15const UG_SERVED: *u8 = "/volume1/ai/gen/elara_ui.html" as *u8
16const UG_DIR: *u8 = "/tmp/nx_gen_ui_gate" as *u8
17const UG_A: *u8 = "/tmp/nx_gen_ui_gate/a.html" as *u8
18const UG_B: *u8 = "/tmp/nx_gen_ui_gate/b.html" as *u8
19const UG_BAD_CONF: *u8 = "/tmp/nx_gen_ui_gate/bad.conf" as *u8
20const UG_BAD_OUT: *u8 = "/tmp/nx_gen_ui_gate/bad.html" as *u8
21const UG_DROP_KEY: *u8 = "api_base|" as *u8
22const UG_MODE_DIR: i64 = 511
23const UG_MODE_FILE: i64 = 420
24const UG_CAP: i64 = 262144
25const UG_MIN_PAGE: i64 = 4096
26const UG_TIMEOUT_MS: i64 = 10000
27const UG_EXIT_REFUSED: i64 = 3
28const UG_CH_NL: i64 = 10

functions

30func ug_len(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n }
called by 1: ug_find
31func ug_find(buf: *u8, n: i64, needle: *u8) -> i64
called by 1: main calls 1: ug_len
45func ug_starts(buf: *u8, at: i64, n: i64, pre: *u8) -> i64
called by 1: ug_write_bad_conf
52func ug_run(conf: *u8, outp: *u8) -> i64
called by 1: main calls 2: sys_mmaptr_run_capture_to
65func ug_same(pa: *u8, pb: *u8) -> i64
called by 1: main calls 2: sys_mmapsys_read_file
80func ug_write_bad_conf() -> i64
104func main() -> i64