code wiki / _hdl_build / nx_self_heal_conductor_test.nx

nx_self_heal_conductor_test.nx

buildroot/runtime/_hdl_build/nx_self_heal_conductor_test.nx

3236 B56 linesdepth 4pulls 7 transitivereach 0 importersview sourcekind gate/prooftopic self
docsdependenciesstructsconstsfunctions

about

nx_self_heal_conductor_test.nx -- prove the CONDUCTOR's Warden-gated self-heal beat on THREE distinct inputs, with clean RACI and additive-only governance: 1. nx_eng_badsrc.nx (reserved-kw) -> heal + verify + council ACT, all sub-verdicts 1 2. nx_eng_clean.nx (compiles) -> COND_CLEAN (nothing to heal) 3. nx_cond_unfixable -> COND_UNFIXABLE (Doctor gives up, no mis-heal) AND the Warden gate holds: the candidate is an additive CREATE, the protected .nx source is overwrite-DENIED. STRUCTURE (see project-knowngood-compiler-regpressure-miscompile): the known-good compiler miscompiles high-register-pressure functions -- comparisons in a fat main() flipped (the beats below all PRINT correctly yet a fat-main gate read them wrong). So main() holds almost nothing: each beat runs in a small helper, every compare is delegated to a tiny eq(), and verdicts land in a MEMORY array. Short live ranges = honest gate.

dependencies 1 imports · 0 importers

nx_self_heal_conductor.nx nx_self_heal_conductor_test.nx

imports: nx_self_heal_conductor.nx

imported by: nobody (leaf or entry point)

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

main sh_puts beat_check cond_heal_beat nx_warden_path_safe wp_is_protected wp_contains wp_slen wp_endswith wp_slen ↻ eng_compile_diag sys_mmap sys_fork sys_openat_wr sys_dup3 sys_close sys_execve sys_exit sys_wait4 sys_openat_rd sys_read doc_offending_kw sys_mmap ↻ sys_read_file sys_openat_rd ↻ sys_lseek sys_mmap ↻ sys_read ↻ sys_close ↻ doc_find doc_slen doc_heal_token sys_mmap ↻ sys_read_file ↻ doc_rename doc_slen ↻ doc_is_ic doc_write_file sys_openat_wr ↻ sys_write

structs

none

consts

none

functions

17func sh_puts(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(1, s, n); return 0 }
18func eq(a: i64, b: i64) -> i64 { if a == b { return 1 } return 0 }
called by 1: beat_check
19func sh_bit(label: *u8, v: i64) -> i64 { sh_puts(label); if v == 1 { sh_puts("1" as *u8) } else { sh_puts("0" as *u8) } return 0 }
called by 1: beat_check calls 1: sh_puts
22func beat_check(kg: *u8, orig: *u8, cand: *u8, label: *u8, expect: i64, check_subs: i64) -> i64
39func main() -> i64