code wiki / _hdl_build / nx_worldgen_tuner_register.nx
nx_worldgen_tuner_register.nx source
↩ module page · 47 lines · 3609 B
1// nx_worldgen_tuner_register.nx -- registers the verdict-targeted knob
2// tuner via the Librarian. ENGINEER evidence = the gate-built KAT elf
3// green + the tuner's banked knob conf exists (a live run completed).
4// license_tier: ORIGINAL
5import "nx_cap_register.nx"
6import "nx_capreg_librarian.nx"
7import "nx_syscalls.nx"
8
9func tr_run(path: *u8) -> i64 {
10 let pid: i64 = sys_fork()
11 if pid == 0 {
12 let dn: i64 = sys_openat_wr("/dev/null" as *u8, 0x1a4)
13 if dn >= 0 { sys_dup3(dn, 1, 0); sys_dup3(dn, 2, 0) }
14 let argv: *i64 = sys_mmap(16) as *i64
15 argv[0] = path as i64; argv[1] = 0
16 let envp: *i64 = sys_mmap(16) as *i64; envp[0] = 0
17 sys_execve(path, argv, envp); sys_exit(127)
18 }
19 let st: *i64 = sys_mmap(16) as *i64
20 sys_wait4(pid, st, 0)
21 let sig: i64 = st[0] & 0x7f
22 if sig != 0 { return 128 + sig }
23 return (st[0] >> 8) & 0xff
24}
25
26func main() -> i64 {
27 var ok: i64 = 1
28 if tr_run("/tmp/nx_worldgen_tuner_test.gg.elf" as *u8) != 0 { ok = 0 }
29 let cfd: i64 = sys_openat_rd("knowledge/status/worldgen_knobs.conf" as *u8)
30 if cfd < 0 { ok = 0 }
31 if cfd >= 0 { sys_close(cfd) }
32 cr_w(1, "ENGINEER: tuner KATs + banked knob conf pass=" as *u8); cr_wn(1, ok); cr_w(1, "\n" as *u8)
33
34 let eng: i64 = ig_engineer(1, 1, 1, ok)
35 let dec: i64 = ig_decision(eng, ig_council(eng, 1, 1, 2), 1)
36 if dec != IG_INGEST { cr_w(1, "HELD\n" as *u8); sys_exit(1) }
37 if cr_can_register(3, 2, 6, dec) != 1 { cr_w(1, "REFUSED\n" as *u8); sys_exit(1) }
38 let lp: *u8 = "/tmp/nishi_cap_registry.log" as *u8
39 let jp: *u8 = "knowledge/status/cap_registry_durable.log" as *u8
40 let idx: i64 = cl_next_idx(lp, jp)
41 let okw: i64 = cl_register_dual(lp, jp, idx, 3,
42 2, "VER WORLDGEN-TUNER verdict-targeted knob optimizer (arc=PROCGEN; operator: build the team's capabilities to handle the callouts). The closed loop: nx_worldgen_refine auto-files a verdict row NAMING a weak axis -> nx_worldgen_tuner reads the banked verdict (preset/density/refine_axis from worldgen_best.conf), coordinate-descends the generator's DATA knobs (river_depth/rill_depth/rill_radius from P4 cfg API + detail_amp from new nx_sig_detail fine-octave primitive) scoring LEXICOGRAPHIC (worst-of-seeds grade dominates, NAMED axis breaks ties -- climbs the callout without trading the grade), banks winner to knowledge/status/worldgen_knobs.conf (+ /tmp copy) and auto-files one pm row on knob change; nx_worldgen_refine consumes the banked knobs via the SAME tl_eval (nx_worldgen_tunelib shared lib) so gate metric == tuned metric, config hierarchy banked-conf > preset-table proven by KAT. FIRST LIVE ASSIGNMENT EXECUTED HANDS-OFF: picked up MORE_FEATURES row -> river_depth 90->150 -> ext 3860->5240 grade C held -> banked + row filed; sweep verdict re-ran steady (dedup = no spurious rows). GATE nx_worldgen_tuner_test 7 KATs (conf int/negative/fallback parse, refine-axis string parse, axis mapping + FLATNESS inversion, lexicographic score, eval determinism, detail_amp-raises-LOCAL_VAR proven, knob round-trip + preset-default fallback; /tmp-only side effects -- a gate beat never mutates team state) = game-gate module 22, FULL GATE 23 MODULES fails=0. HONEST: ext 5240 still sub-marginal -- knobs alone cannot close it; the open verdict row keeps naming it; next structural rung = mesa-aware spring placement / more landmark mass" as *u8)
43 if okw != 1 { cr_w(1, "DUAL-WRITE FAILED\n" as *u8); sys_exit(1) }
44 cr_w(1, "CAPREG idx=" as *u8); cr_wn(1, idx); cr_w(1, " REGISTERED (worldgen tuner)\n" as *u8)
45 sys_exit(0)
46 return 0
47}