code wiki / _hdl_build / nx_eval_triangle_register.nx

nx_eval_triangle_register.nx source

↩ module page · 77 lines · 4295 B

1// nx_eval_triangle_register.nx -- GOVERNED registration of the EVAL TRIANGULATION platform rung 1. 2// ENGINEER verdict mechanical: re-run the KAT (6 verdict classes incl. last-wins + operator-override) 3// and byte-compare stdout to knowledge/status/eval_kat_expected.txt. license_tier: ORIGINAL 4import "nx_cap_register.nx" 5import "nx_pm_review_log.nx" 6import "nx_syscalls.nx" 7 8func etr_run3(path: *u8, a1: *u8, a2: *u8, a3: *u8, outpath: *u8) -> i64 { 9 let pid: i64 = sys_fork() 10 if pid == 0 { 11 let ofd: i64 = sys_openat_wr(outpath, 0x1a4) 12 if ofd >= 0 { sys_dup3(ofd, 1, 0) } 13 let argv: *i64 = sys_mmap(48) as *i64 14 argv[0] = path as i64 15 argv[1] = a1 as i64 16 argv[2] = a2 as i64 17 argv[3] = a3 as i64 18 argv[4] = 0 19 let envp: *i64 = sys_mmap(16) as *i64 20 envp[0] = "PATH=/usr/bin:/bin" as *u8 as i64 21 envp[1] = 0 22 sys_execve(path, argv, envp) 23 sys_exit(127) 24 } 25 let st: *i64 = sys_mmap(16) as *i64 26 sys_wait4(pid, st, 0) 27 let sig: i64 = st[0] & 0x7f 28 if sig != 0 { return 128 + sig } 29 return (st[0] >> 8) & 0xff 30} 31 32func etr_files_eq(pa: *u8, pb: *u8) -> i64 { 33 let la: *i64 = sys_mmap(8) as *i64 34 let ba: *u8 = sys_read_file(pa, la) 35 let lb: *i64 = sys_mmap(8) as *i64 36 let bb: *u8 = sys_read_file(pb, lb) 37 if (ba as i64) == 0 { return 0 } 38 if (bb as i64) == 0 { return 0 } 39 if la[0] != lb[0] { return 0 } 40 var i: i64 = 0 41 while i < la[0] { if ba[i] != bb[i] { return 0 } i = i + 1 } 42 if la[0] < 10 { return 0 } 43 return 1 44} 45 46func main() -> i64 { 47 let rc: i64 = etr_run3("/tmp/_eval_triangle_authored.sov.elf" as *u8, "knowledge/status/eval_kat_lanes.log" as *u8, "700" as *u8, "/tmp/eval_triangle_kat.log" as *u8, "/tmp/etr_kat_out.txt" as *u8) 48 let eq: i64 = etr_files_eq("/tmp/etr_kat_out.txt" as *u8, "knowledge/status/eval_kat_expected.txt" as *u8) 49 cr_w(1, "ENGINEER: eval-triangle KAT exit=" as *u8); cr_wn(1, rc) 50 cr_w(1, " byte-exact=" as *u8); cr_wn(1, eq); cr_w(1, " (need 0 and 1)\n" as *u8) 51 52 var exit_ok: i64 = 0 53 if rc == 0 { if eq == 1 { exit_ok = 1 } } 54 let eng: i64 = ig_engineer(1, 1, 1, exit_ok) 55 let cat: i64 = sys_openat_rd("knowledge/CAPABILITY_CATALOG.md" as *u8) 56 var documented: i64 = 0 57 if cat >= 0 { documented = ig_documented(1, 1); sys_close(cat) } 58 let council: i64 = ig_council(eng, 1, 1, 2) 59 let decision: i64 = ig_decision(eng, council, documented) 60 61 let pm: i64 = pm_open("/tmp/nishi_pm_review.log" as *u8) 62 if decision == IG_INGEST { 63 pm_deliverable(pm, "eldermig/eval" as *u8, "nx_eval_triangle" as *u8, "EVAL rung 1 CLOSED: Builder-authored triangulation (M=math measurements, V=local model, O=operator flags -> TRI-GOOD/BAD/OPERATOR-OVERRIDE/SPLIT-MODEL/SPLIT-MEASURED/INCOMPLETE), KAT 6/6 byte-exact; pure-Nishi append-only log storage per the info-mgmt plan (NO SQL, NO py); threshold+paths as argv" as *u8) 64 } 65 pm_gap(pm, "eldermig/eval" as *u8, "NEXT-RUNG" as *u8, "wire the three real lanes" as *u8, "M lane = nx_image_grade_v2 + nx_img_forensics (to build); V lane = local VLM via the team's own HTTP client to Elder svc-quality/svc-vlm-observer (model as oracle, sovereign transport); O lane = operator flag UI writing EVAL lines; then TRI-OPERATOR-OVERRIDE rows become the pattern-recognition corpus" as *u8) 66 sys_close(pm) 67 cr_w(1, "GOVERNED decision=" as *u8); cr_wn(1, decision); cr_w(1, " (1=INGEST); PM log updated\n" as *u8) 68 69 if decision != IG_INGEST { sys_exit(1) } 70 if cr_can_register(2, 2, 6, decision) != 1 { cr_w(1, "REFUSED\n" as *u8); sys_exit(1) } 71 let fd: i64 = sys_openat_append("/tmp/nishi_cap_registry.log" as *u8, 0x1a4) 72 cr_write_entry(fd, 225, 2, "GEN EVAL-TRIANGLE rung1 -- Builder-authored (ma_emit_eval_triangle) triangulation evaluation platform: M(math)/V(local model)/O(operator flag) lanes -> pattern verdicts incl. TRI-OPERATOR-OVERRIDE (the learning signal); KAT 6/6 byte-exact; append-only Nishi log storage (knowledge/status/eval_triangle.log), NO SQL NO py; argv threshold/paths; next = wire real lanes (image_grade_v2 + forensics, VLM-as-oracle via own HTTP, operator flag writer)" as *u8, 2) 73 sys_close(fd) 74 cr_w(1, "CAPREG idx=225 REGISTERED\n" as *u8) 75 sys_exit(0) 76 return 0 77}