code wiki / _hdl_build / nx_uat_run.nx

nx_uat_run.nx

buildroot/runtime/_hdl_build/nx_uat_run.nx

7099 B158 linesdepth 3pulls 4 transitivereach 0 importersview sourcekind tool
docsdependenciesstructsconstsfunctions

about

nx_uat_run.nx -- THE CONSUMER UAT RUNNER (operator doctrine 2026-08-02: digital-twin, see it -> log it -> work it -> UAT it, on cadence -- the loop a team of people AND consumers would run). Walks knowledge/uat_journeys.conf (id|url|connect|latency_ms_max|must_contain), fetches each journey through the REAL sovereign edge by forking the promoted nx_https_get.elf (the same bytes a user's request traverses), measures WALL latency as a human feels it, checks HTTP 200 + the content the human came for, and journals ONE frame per journey to knowledge/status/uat.jrnl (append-only). A journey slower than its bar FAILS even if the bytes are perfect: the bar is the consumer's patience, not the backend's throughput (seeded by the 8845ms SERP finding, 2026-08-02). Bars/journeys live in DATA (rule 11): expanding UAT = adding a conf row, never a code change. license_tier: ORIGINAL expect_exit: 0 when every journey passes

dependencies 3 imports · 0 importers

nx_syscalls.nx nx_estate_path.nx nx_gate_verdict.nx nx_uat_run.nx

imports: nx_syscalls.nxnx_estate_path.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 ep_anchor sys_openat_rd sys_close sys_chdir sys_mmap gv_puts sys_write sys_mmap ↻ sys_read_file sys_openat_rd ↻ sys_lseek sys_mmap ↻ sys_read sys_close ↻ gv_ctr sys_mmap ↻ ua_atoi gv_cat gv_catn sys_mmap ↻ sys_munmap sys_now_us sys_mmap ↻ sys_clock_gettime_mono ua_fetch sys_fork sys_openat_wr sys_dup3 sys_mmap ↻ sys_execve sys_exit sys_wait4 ua_find ua_slen gv_num sys_mmap ↻ sys_write ↻ sys_munmap ↻ gv_check

structs

none

consts

none

functions

15func ua_slen(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} return n }
called by 1: ua_find
17func ua_find(hay: *u8, n: i64, needle: *u8) -> i64
called by 1: main calls 1: ua_slen
31func ua_atoi(s: *u8) -> i64
called by 1: main
43func ua_fetch(url: *u8, conn: *u8, out_path: *u8) -> i64
66func ua_journal(id: *u8, ok: i64, ms: i64) -> i64
88func main() -> i64