code wiki / (root) / nx_mcu_ready_gate.nx

nx_mcu_ready_gate.nx

buildroot/runtime/nx_mcu_ready_gate.nx

9562 B156 linesdepth 4pulls 6 transitivereach 0 importersview sourcekind gate/prooftopic mcu
docsdependenciesstructsconstsfunctions

about

nx_mcu_ready_gate.nx -- pins the hardware-test chokepoint, using the MEASURED esp32-ai workload on the MEASURED S3 N16R8 row so the gate is about a real bring-up, not invented numbers. The composition has one asymmetry that must never silently invert, and T4/T5 exist to pin it: SAFETY DOMINATES FIT. A config that fits perfectly is still refused when the write is irreversible, and when BOTH fail the reported blocker is SAFETY -- because a sizing problem is recoverable by picking a smaller model, whereas an unsafe write is a dead board. A symmetric AND would report either, and an operator reading "blocker=FIT" would go shrink the model and then flash an unrecoverable board. T7 is the third-party case and the reason this organ exists: an UNBENCHED board must come back BLOCKED, never READY -- a work order, not a guess. license_tier: ORIGINAL No hw writes (Rule 26). expect_exit: 0

dependencies 3 imports · 0 importers

nx_syscalls.nx nx_gate_verdict.nx nx_mcu_ready.nx nx_mcu_ready_gate.nx

imports: nx_syscalls.nxnx_gate_verdict.nxnx_mcu_ready.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 gv_head gv_puts sys_write rdy_check mf_admit nb_verdict nb_class_of_ns nb_streq gv_check gv_puts ↻ rdy_target_measured rdy_probe gv_puts ↻ mf_reason rdy_reason mrg_has mrg_len gv_verdict gv_puts ↻ gv_num sys_mmap ↻ sys_write ↻ sys_munmap gv_journal sys_openat_append sys_mmap ↻ gv_catn sys_mmap ↻ sys_munmap ↻ sys_now_realtime_sec sys_mmap ↻ sys_clock_gettime_real gv_cat sys_write ↻ sys_close sys_munmap ↻

structs

none

consts

none

functions

17func mrg_len(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n }
called by 1: mrg_has
18func mrg_has(hay: *u8, needle: *u8) -> i64
called by 1: main calls 1: mrg_len
36func main() -> i64