code wiki / _hdl_build / nx_abmk_register.nx
nx_abmk_register.nx source
↩ module page · 37 lines · 2363 B
1// nx_abmk_register.nx -- records X-AUT-004's MATH_KERNEL one-command dispatch route.
2// Guard: the emitter-authored artifact's KAT re-runs GREEN at register time.
3// license_tier: ORIGINAL
4import "nx_cap_register.nx"
5import "nx_capreg_librarian.nx"
6import "nx_syscalls.nx"
7func ak_run(name: *u8) -> i64 {
8 let pid: i64 = sys_fork()
9 if pid == 0 {
10 let dn: i64 = sys_openat_wr("/dev/null" as *u8, 0x1a4)
11 if dn >= 0 { sys_dup3(dn, 1, 0); sys_dup3(dn, 2, 0) }
12 let argv: *i64 = sys_mmap(32) as *i64
13 argv[0] = "_offc/nx_sov_build_run.elf" as *u8 as i64
14 argv[1] = name as i64
15 argv[2] = 0
16 let envp: *i64 = sys_mmap(16) as *i64
17 envp[0] = 0
18 sys_execve("_offc/nx_sov_build_run.elf" as *u8, argv, envp)
19 sys_exit(127)
20 }
21 let st: *i64 = sys_mmap(16) as *i64
22 sys_wait4(pid, st, 0)
23 if (st[0] % 128) != 0 { return 0 - 1 }
24 return (st[0] >> 8) & 0xff
25}
26func main() -> i64 {
27 let lp: *u8 = "/tmp/nishi_cap_registry.log" as *u8
28 let jp: *u8 = "knowledge/status/cap_registry_durable.log" as *u8
29 if ak_run("_ab_mk_erf_test" as *u8) != 0 { cr_w(1, "abmk KAT not green -- refuse register\n" as *u8); sys_exit(1) }
30 let idx: i64 = cl_next_idx(lp, jp)
31 let ok: i64 = cl_register_dual(lp, jp, idx, 5,
32 2, "SELF MATH-KERNEL-ONE-COMMAND author=emitter (X-AUT-004 dispatch route, distinct from the erf RUNG capreg411) -- nx_auto_builder gained the specfile grammar + c-table loader + ab_author_11 dispatch (templates: 1=LOG_REDUCE 2=ERF_TAYLOR): a SIX-LINE TEXT SPEC (name/feature in_coeffs/specfile <generated-table>/param <template> <n>) becomes a gated kernel HANDS-OFF -- classifier routes shape 11, the Builder emitter authors module+test from the sovereign constant table, the KAT judges. PROOF ARTIFACT _ab_mk_erf: authored+KAT-GREEN in 129ms, zero hands (AUTOBUILD GREEN row 2026-06-12); KAT re-run green at register time. ABGATE 6/6 held after the dispatch surgery. CONSEQUENCE: math kernels are queue-row work (||SPEC= -> attempt loop -> authored), gamma/erfc ride this route; A2 axis counts the emitter authorship honestly" as *u8)
33 if ok != 1 { cr_w(1, "DUAL-WRITE FAILED\n" as *u8); sys_exit(1) }
34 cr_w(1, "CAPREG idx=" as *u8); cr_wn(1, idx); cr_w(1, " MATH-KERNEL-ONE-COMMAND author=emitter registered\n" as *u8)
35 sys_exit(0)
36 return 0
37}