code wiki / _hdl_build / nx_lora_screen_gate.nx
nx_lora_screen_gate.nx source
↩ module page · 112 lines · 5531 B
1// nx_lora_screen_gate.nx -- GATE for G16 lc_screen (nx_lora_screen_lib). In-process over the lib (no stale-artifact
2// gap); fixtures are CRAFTED AT RUNTIME in /tmp/nx_lora_screen_gate/ (gate scratch law: never a production path,
3// setup-time mkdir because a crashed run skips teardown). Planted-bad fixtures whose declared sizes disagree with
4// their bytes MUST fire; the well-formed fixture MUST stay silent (gv_bite both directions). Inherits the
5// nx_gate_verdict base class: per-tooth gv_check/gv_bite, verdict carried by exit code.
6// license_tier: ORIGINAL expect_exit: 0
7import "nx_syscalls.nx"
8import "nx_gate_verdict.nx"
9import "nx_lora_screen_lib.nx"
10
11const LG_DATA_FILL: i64 = 171 // 0xAB fill byte for fixture tensor data
12
13func lg_w(fd: i64, buf: *u8, n: i64) -> i64 {
14 var off: i64=0
15 while off<n { let w: i64 = sys_write(fd, (buf as i64 + off) as *u8, n-off); if w<=0 { return 0-1 } else { off=off+w } }
16 return n
17}
18
19// write a synthetic .safetensors: 8-byte LE header length + json + datalen fill bytes. returns file bytes or -1.
20func lg_mkst(path: *u8, json: *u8, datalen: i64) -> i64 {
21 let jl: i64 = lc_slen(json)
22 let fd: i64 = sys_openat_wr(path, 420)
23 if fd<0 { return 0-1 }
24 let lenb: *u8 = sys_mmap(16)
25 var v: i64=jl
26 var i: i64=0
27 while i<8 { lenb[i]=(v%256) as u8; v=v/256; i=i+1 }
28 lg_w(fd, lenb, 8)
29 lg_w(fd, json, jl)
30 let db: *u8 = sys_mmap(datalen+1)
31 var d: i64=0
32 while d<datalen { db[d]=LG_DATA_FILL as u8; d=d+1 }
33 if datalen>0 { lg_w(fd, db, datalen) }
34 sys_close(fd)
35 return 8+jl+datalen
36}
37
38func main() -> i64 {
39 gv_head("=== nx_lora_screen_gate: the G16 static screen must fire on forged/truncated declared sizes and stay silent on a well-formed file ===" as *u8)
40 let ctr: *i64 = gv_ctr()
41
42 sys_mkdir("/tmp/nx_lora_screen_gate" as *u8, 493)
43
44 let jgood: *u8 = "{\"t0\":{\"dtype\":\"F16\",\"shape\":[2,2],\"data_offsets\":[0,8]},\"t1\":{\"dtype\":\"F16\",\"shape\":[2,2],\"data_offsets\":[8,16]},\"__metadata__\":{\"ss_trigger\":\"gatetestword\"}}" as *u8
45 let jgap: *u8 = "{\"t0\":{\"dtype\":\"F16\",\"shape\":[2,2],\"data_offsets\":[0,8]},\"t1\":{\"dtype\":\"F16\",\"shape\":[1,4],\"data_offsets\":[12,16]}}" as *u8
46 let jover: *u8 = "{\"t0\":{\"dtype\":\"F16\",\"shape\":[4,4],\"data_offsets\":[0,32]}}" as *u8
47
48 let szgood: i64 = lg_mkst("/tmp/nx_lora_screen_gate/good.safetensors" as *u8, jgood, 16)
49 let sztrail: i64 = lg_mkst("/tmp/nx_lora_screen_gate/trailing.safetensors" as *u8, jgood, 24)
50 let szgap: i64 = lg_mkst("/tmp/nx_lora_screen_gate/gap.safetensors" as *u8, jgap, 16)
51 let szover: i64 = lg_mkst("/tmp/nx_lora_screen_gate/overdecl.safetensors" as *u8, jover, 16)
52 let ck: i64 = sys_openat_wr("/tmp/nx_lora_screen_gate/evil.ckpt" as *u8, 420)
53 if ck>=0 { lg_w(ck, "arbitrary-pickle-bytes" as *u8, 22); sys_close(ck) }
54
55 // the fixture must be ABLE to fail: assert each planted file reached its intended byte shape before judging
56 var f1: i64=0
57 if szgood==8+lc_slen(jgood)+16 { f1=1 }
58 gv_check("fixture-reached-condition-good-bytes" as *u8, f1, ctr)
59 var f2: i64=0
60 if sztrail==szgood+8 { f2=1 }
61 gv_check("fixture-reached-condition-trailing-is-8-bytes-longer" as *u8, f2, ctr)
62 var f3: i64=0
63 if szgap>0 { if szover>0 { f3=1 } }
64 gv_check("fixture-reached-condition-gap-and-overdecl-written" as *u8, f3, ctr)
65
66 gv_puts("--- good ---\n" as *u8)
67 let rc_good: i64 = lc_screen("/tmp/nx_lora_screen_gate/good.safetensors" as *u8)
68 gv_puts("--- trailing ---\n" as *u8)
69 let rc_trail: i64 = lc_screen("/tmp/nx_lora_screen_gate/trailing.safetensors" as *u8)
70 gv_puts("--- gap ---\n" as *u8)
71 let rc_gap: i64 = lc_screen("/tmp/nx_lora_screen_gate/gap.safetensors" as *u8)
72 gv_puts("--- overdecl ---\n" as *u8)
73 let rc_over: i64 = lc_screen("/tmp/nx_lora_screen_gate/overdecl.safetensors" as *u8)
74 gv_puts("--- pickle ---\n" as *u8)
75 let rc_ckpt: i64 = lc_screen("/tmp/nx_lora_screen_gate/evil.ckpt" as *u8)
76 gv_puts("--- absent ---\n" as *u8)
77 let rc_abs: i64 = lc_screen("/tmp/nx_lora_screen_gate/does-not-exist.safetensors" as *u8)
78
79 var good_fired: i64=0
80 if rc_good!=0 { good_fired=1 }
81 var t_clean: i64=0
82 if rc_good==0 { t_clean=1 }
83 gv_check("clean-safetensors-returns-0" as *u8, t_clean, ctr)
84 var b_trail: i64=0
85 if rc_trail==1 { b_trail=1 }
86 gv_bite("neg-control-trailing-payload-bites" as *u8, b_trail, good_fired, ctr)
87 var b_gap: i64=0
88 if rc_gap==1 { b_gap=1 }
89 gv_bite("neg-control-gap-or-overlap-bites" as *u8, b_gap, good_fired, ctr)
90 var b_over: i64=0
91 if rc_over==1 { b_over=1 }
92 gv_bite("neg-control-declared-exceeds-file-bites" as *u8, b_over, good_fired, ctr)
93 var t_ck: i64=0
94 if rc_ckpt==4 { t_ck=1 }
95 gv_check("pickle-refused-outright-rc4-cwe502" as *u8, t_ck, ctr)
96 var t_abs: i64=0
97 if rc_abs==3 { t_abs=1 }
98 gv_check("unreadable-abstains-rc3-never-acquits" as *u8, t_abs, ctr)
99 var t_c1: i64=0
100 if lc_class("x.safetensors" as *u8)==1 { t_c1=1 }
101 gv_check("class-safetensors-recognised" as *u8, t_c1, ctr)
102 var t_c2: i64=0
103 if lc_class("x.pt" as *u8)==4 { t_c2=1 }
104 gv_check("class-pt-is-pickle-class" as *u8, t_c2, ctr)
105 var t_c3: i64=0
106 if lc_class("x.gguf" as *u8)==0 { t_c3=1 }
107 gv_check("class-unknown-abstains" as *u8, t_c3, ctr)
108
109 let rc: i64 = gv_verdict("nx_lora_screen_gate" as *u8, ctr, "static screen judged in-process on runtime-crafted fixtures" as *u8)
110 sys_exit(rc)
111 return rc
112}