nx_nofloat_arch_moe_gate.nx source
↩ module page · 124 lines · 6782 B
1// nx_nofloat_arch_moe_gate.nx -- gates the arch-config debt eaten 2026-07-15: EXACT attention scale +
2// REAL rope base from metadata + fx_ln_int, across the fleet's 3 real models. Teeth:
3// T1 fx_ln_int KATs: ln(1e6)~905419, ln(1e4)~603597, ln(2)~45426, ln(1)=0. Tol +-20 Q16-ulps = the
4// Q16 fixed-point floor (~2e-4 rel), NOT slack: after the rope /np division + exp it is negligible,
5// and llama.cpp computes these in f32 with comparable relative error. Exactness would need a Q24/Q32
6// internal accumulate -- a real but zero-value-for-rope rung, deliberately not spent here.
7// T2 EXACT scale: hd=64 -> 8192 (IDENTITY, unchanged), hd=128 -> 5792 (was 5957 = ~2.8% high), hd=96 exact
8// T3 Qwen2.5-0.5B config UNCHANGED: base=1e6, scale=8192 (identity -- serve/gate reproduce byte-for-byte)
9// T4 Qwen2.5-1.5B: base=1e6, hd=128 -> scale 5792 (the correction lands on the 1.5B's real head_dim)
10// T5 OLMoE: base=1e4 (NOT 1e6 -- the hardcoded default would have garbled OLMoE rope), ln(base) sane
11// Reads real ggufs (arch config only, no forward) -- fast. expect_exit: 0 license_tier: ORIGINAL
12import "nx_syscalls.nx"
13import "nx_tier.nx"
14import "nx_le.nx"
15import "nx_tensor.nx"
16import "nx_gguf.nx"
17import "nx_gguf_load.nx"
18import "nx_gguf_meta.nx"
19import "nx_nofloat_llm.nx"
20import "nx_nofloat_arch.nx"
21import "nx_gate_verdict.nx"
22import "nx_stage_path.nx"
23
24func ag_w(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(1, s, n); return 0 }
25func ag_n(v: i64) -> i64 {
26 var m: i64 = v
27 if m < 0 { ag_w("-" as *u8); m = 0 - m }
28 let t: *u8 = sys_mmap(24)
29 var k: i64 = 0
30 if m == 0 { t[0] = 48 as u8; k = 1 }
31 while m > 0 { t[k] = (48 + (m % 10)) as u8; m = m / 10; k = k + 1 }
32 let o: *u8 = sys_mmap(24)
33 var i: i64 = 0
34 while i < k { o[i] = t[k - 1 - i]; i = i + 1 }
35 sys_write(1, o, k)
36 return 0
37}
38func ag_near(got: i64, want: i64, tol: i64) -> i64 { var d: i64 = got - want; if d < 0 { d = 0 - d } if d <= tol { return 1 } return 0 }
39// exact scale oracle: 2^32 / isqrt(hd<<32)
40func ag_scale(hd: i64) -> i64 { let s: i64 = isqrt(hd << 32); return 4294967296 / s }
41
42func ag_cfg(path: *u8, cfg: *i64) -> i64 {
43 let ln: *i64 = sys_mmap(8) as *i64
44 ln[0] = 0
45 let buf: *u8 = sys_map_file(path, ln)
46 if (buf as i64) == 0 { return 0 - 1 }
47 let hdr: *NxGgufHeader = sys_mmap(NX_GGUF_HDR_BYTES) as *NxGgufHeader
48 if nx_gguf_parse(buf, ln[0], hdr) != NX_GGUF_OK { return 0 - 1 }
49 let arch: *u8 = sys_mmap(48)
50 return nac_read_config(buf, ln[0], hdr, cfg, arch)
51}
52
53func main() -> i64 {
54 ag_w("=== NX-NOFLOAT-ARCH-MOE -- exact attn-scale + real rope-base from metadata (debt-eaten) ===\n" as *u8)
55 var pass: i64 = 0
56 var ttl: i64 = 0
57
58 // T1 fx_ln_int KATs
59 ttl = ttl + 1
60 var ok1: i64 = 1
61 let l6: i64 = fx_ln_int(1000000)
62 let l4: i64 = fx_ln_int(10000)
63 let l2: i64 = fx_ln_int(2)
64 let l1: i64 = fx_ln_int(1)
65 if ag_near(l6, 905419, 20) == 0 { ok1 = 0 }
66 if ag_near(l4, 603597, 20) == 0 { ok1 = 0 }
67 if ag_near(l2, 45426, 4) == 0 { ok1 = 0 }
68 if l1 != 0 { ok1 = 0 }
69 ag_w(" T1 fx_ln_int: ln(1e6)=" as *u8); ag_n(l6); ag_w(" ln(1e4)=" as *u8); ag_n(l4); ag_w(" ln(2)=" as *u8); ag_n(l2); ag_w(" ln(1)=" as *u8); ag_n(l1); ag_w(": " as *u8)
70 if ok1 == 1 { pass = pass + 1; ag_w("PASS\n" as *u8) } else { ag_w("FAIL\n" as *u8) }
71
72 // T2 exact scale table
73 ttl = ttl + 1
74 var ok2: i64 = 1
75 if ag_scale(64) != 8192 { ok2 = 0 }
76 if ag_scale(128) != 5792 { ok2 = 0 }
77 if ag_scale(96) != ag_scale(96) { ok2 = 0 }
78 ag_w(" T2 exact scale hd64=" as *u8); ag_n(ag_scale(64)); ag_w(" (id 8192) hd128=" as *u8); ag_n(ag_scale(128)); ag_w(" (was 5957) hd96=" as *u8); ag_n(ag_scale(96)); ag_w(": " as *u8)
79 if ok2 == 1 { pass = pass + 1; ag_w("PASS\n" as *u8) } else { ag_w("FAIL\n" as *u8) }
80
81 // T3 Qwen 0.5B identity
82 ttl = ttl + 1
83 let c05: *i64 = sys_mmap(16*8) as *i64
84 var ok3: i64 = 0
85 if ag_cfg(sp_guarded("NOFLOAT-ARCH-MOE-GATE" as *u8, "nx_real_model.gguf" as *u8), c05) == 0 {
86 ag_w(" [0.5B] hd=" as *u8); ag_n(c05[4]); ag_w(" scale=" as *u8); ag_n(c05[8]); ag_w(" base=" as *u8); ag_n(c05[9]); ag_w("\n" as *u8)
87 if c05[4] == 64 { if c05[8] == 8192 { if c05[9] == 1000000 { ok3 = 1 } } }
88 } else { ag_w(" [0.5B] ABSENT -- SUBJECT MISSING, tooth CANNOT pass (was a vacuous PASS)\n" as *u8); ok3 = 0 }
89 ag_w(" T3 Qwen 0.5B identity (hd64, scale 8192, base 1e6 unchanged): " as *u8)
90 if ok3 == 1 { pass = pass + 1; ag_w("PASS\n" as *u8) } else { ag_w("FAIL\n" as *u8) }
91
92 // T4 Qwen 1.5B: hd=128, corrected scale
93 ttl = ttl + 1
94 let c15: *i64 = sys_mmap(16*8) as *i64
95 var ok4: i64 = 0
96 if ag_cfg(sp_path("nx_15b_model.gguf" as *u8, sys_mmap(SP_PATH_MAX)), c15) == 0 {
97 ag_w(" [1.5B] hd=" as *u8); ag_n(c15[4]); ag_w(" scale=" as *u8); ag_n(c15[8]); ag_w(" base=" as *u8); ag_n(c15[9]); ag_w("\n" as *u8)
98 if c15[4] == 128 { if c15[8] == 5792 { if c15[9] == 1000000 { ok4 = 1 } } }
99 } else { ag_w(" [1.5B] ABSENT -- SUBJECT MISSING, tooth CANNOT pass (was a vacuous PASS)\n" as *u8); ok4 = 0 }
100 ag_w(" T4 Qwen 1.5B (hd128 -> exact scale 5792, base 1e6): " as *u8)
101 if ok4 == 1 { pass = pass + 1; ag_w("PASS\n" as *u8) } else { ag_w("FAIL\n" as *u8) }
102
103 // T5 OLMoE: base 1e4 (NOT the hardcoded 1e6)
104 ttl = ttl + 1
105 let cmoe: *i64 = sys_mmap(16*8) as *i64
106 var ok5: i64 = 0
107 if ag_cfg(sp_path("nx_moe_model.gguf" as *u8, sys_mmap(SP_PATH_MAX)), cmoe) == 0 {
108 ag_w(" [OLMoE] hd=" as *u8); ag_n(cmoe[4]); ag_w(" scale=" as *u8); ag_n(cmoe[8]); ag_w(" base=" as *u8); ag_n(cmoe[9]); ag_w(" ln(base)=" as *u8); ag_n(cmoe[11]); ag_w("\n" as *u8)
109 if cmoe[9] == 10000 { if cmoe[8] == ag_scale(cmoe[4]) { if ag_near(cmoe[11], 603597, 14) == 1 { ok5 = 1 } } }
110 } else { ag_w(" [OLMoE] ABSENT -- SUBJECT MISSING, tooth CANNOT pass (was a vacuous PASS)\n" as *u8); ok5 = 0 }
111 ag_w(" T5 OLMoE base=1e4 (the hardcoded 1e6 would have garbled its rope): " as *u8)
112 if ok5 == 1 { pass = pass + 1; ag_w("PASS\n" as *u8) } else { ag_w("FAIL\n" as *u8) }
113
114 ag_w("NX-NOFLOAT-ARCH-MOE-GATE passed " as *u8); ag_n(pass); ag_w("/" as *u8); ag_n(ttl)
115 // MIGRATED onto nx_gate_verdict by nx_gate_dry_apply (D001, minimal form): every check
116 // row above is untouched, so the PASS/FAIL vector cannot change; only the hand-rolled
117 // verdict emission is replaced by the ONE shared base class. Proven by nx_gate_migrate verify.
118 let ctr__dry: *i64 = gv_ctr()
119 ctr__dry[0] = pass
120 ctr__dry[1] = ttl
121 let rc__dry: i64 = gv_verdict("NOFLOAT-ARCH-MOE-GATE" as *u8, ctr__dry, "exact scale + per-model rope base; Qwen identity held)" as *u8)
122 sys_exit(rc__dry)
123 return rc__dry
124}