code wiki / _hdl_build / nx_click_gate.nx
nx_click_gate.nx source
↩ module page · 41 lines · 4024 B
1// nx_click_gate.nx -- KAT for R-UX-4 (nx_click): click-through aggregates into a CTR feature that ranks a
2// popular-for-this-query doc above a rarely-clicked one. Content-neutral counts only. expect_exit: 0
3import "nx_syscalls.nx"
4import "nx_click.nx"
5
6func cg_puts(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(1,s,n); return 0 }
7func cg_pn(v: i64) -> i64 { let bb: *u8=sys_mmap(28); var m: i64=v; if m<0{m=0-m;sys_write(1,"-" as *u8,1)}; let t: *u8=sys_mmap(28); var k: i64=0; if m==0{t[0]=(48 as u8);k=1}; while m>0{t[k]=((48+(m%10)) as u8);m=m/10;k=k+1}; var i: i64=0; while i<k{bb[i]=t[k-1-i];i=i+1}; sys_write(1,bb,k); return 0 }
8func cg_w(fd: i64, s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(fd,s,n); return 0 }
9func cg_wn(fd: i64, v: i64) -> i64 { let bb: *u8=sys_mmap(28); var m: i64=v; if m<0{m=0-m}; let t: *u8=sys_mmap(28); var k: i64=0; if m==0{t[0]=(48 as u8);k=1}; while m>0{t[k]=((48+(m%10)) as u8);m=m/10;k=k+1}; var i: i64=0; while i<k{bb[i]=t[k-1-i];i=i+1}; sys_write(fd,bb,k); return 0 }
10
11func main() -> i64 {
12 cg_puts("=== R-UX-4 CLICK-LOOP -- click-through aggregates into a CTR ranking feature ===\n" as *u8)
13 let Q: i64=1; let Dn: i64=3
14 let clk: *i64=sys_mmap(8*Q*Dn) as *i64; let imp: *i64=sys_mmap(8*Q*Dn) as *i64
15 var z: i64=0; while z<Q*Dn { clk[z]=0; imp[z]=0; z=z+1 }
16 // query 0, three result docs. Simulate: docA shown 10x clicked 8x; docB shown 10x clicked 1x; docC shown 4x clicked 0x.
17 var i: i64=0
18 while i<10 { var c: i64=0; if i<8 { c=1 } vr_click_record(clk, imp, Dn, 0, 0, c); i=i+1 } // docA: 8/10
19 i=0; while i<10 { var c: i64=0; if i<1 { c=1 } vr_click_record(clk, imp, Dn, 0, 1, c); i=i+1 } // docB: 1/10
20 i=0; while i<4 { vr_click_record(clk, imp, Dn, 0, 2, 0); i=i+1 } // docC: 0/4
21
22 let ctrA: i64=vr_click_ctr(clk, imp, Dn, 0, 0)
23 let ctrB: i64=vr_click_ctr(clk, imp, Dn, 0, 1)
24 let ctrC: i64=vr_click_ctr(clk, imp, Dn, 0, 2)
25 cg_puts(" CTR(milli): docA=" as *u8); cg_pn(ctrA); cg_puts(" docB=" as *u8); cg_pn(ctrB); cg_puts(" docC=" as *u8); cg_pn(ctrC); cg_puts("\n" as *u8)
26 cg_puts(" raw clicks: docA=" as *u8); cg_pn(vr_click_raw(clk,Dn,0,0)); cg_puts(" docB=" as *u8); cg_pn(vr_click_raw(clk,Dn,0,1)); cg_puts("\n" as *u8)
27
28 var pass: i64=0; var total: i64=0
29 total=total+1; cg_puts(" T1 aggregation: docA raw clicks==8 " as *u8); if vr_click_raw(clk,Dn,0,0)==8 { pass=pass+1; cg_puts("PASS\n" as *u8) } else { cg_puts("FAIL\n" as *u8) }
30 total=total+1; cg_puts(" T2 CTR ordering A>B (popular ranks higher) " as *u8); if ctrA>ctrB { pass=pass+1; cg_puts("PASS\n" as *u8) } else { cg_puts("FAIL\n" as *u8) }
31 total=total+1; cg_puts(" T3 milli-CTR exact: docA=800 (8/10) " as *u8); if ctrA==800 { pass=pass+1; cg_puts("PASS\n" as *u8) } else { cg_puts("FAIL\n" as *u8) }
32 total=total+1; cg_puts(" T4 never-clicked doc has CTR 0 (docC) " as *u8); if ctrC==0 { pass=pass+1; cg_puts("PASS\n" as *u8) } else { cg_puts("FAIL\n" as *u8) }
33 total=total+1; cg_puts(" T5 unshown (q0,d?) safe: imp=0 -> CTR 0, no div-by-0 " as *u8); if vr_click_ctr(clk,imp,Dn,0,2)==0 { pass=pass+1; cg_puts("PASS\n" as *u8) } else { cg_puts("FAIL\n" as *u8) }
34
35 cg_puts("----\nCLICK gate " as *u8); cg_pn(pass); cg_puts("/" as *u8); cg_pn(total); cg_puts(" passed\n" as *u8)
36 cg_puts("HONEST: content-neutral counts only (no query text, no PII). milli-CTR feeds R-?-LTR as a feature.\n" as *u8)
37 let lg: i64=sys_openat_append("knowledge/status/click_gate.log" as *u8, 0x1a4)
38 if lg>=0 { cg_w(lg, "R-UX-4 click gate pass=" as *u8); cg_wn(lg, pass); cg_w(lg, "/" as *u8); cg_wn(lg, total); if pass==total { cg_w(lg, " GREEN\n" as *u8) } else { cg_w(lg, " RED\n" as *u8) } sys_close(lg) }
39 if pass==total { cg_puts("R-UX-4 GREEN (sovereign click-loop / query-analytics proven)\n" as *u8); sys_exit(0); return 0 }
40 cg_puts("R-UX-4 RED\n" as *u8); sys_exit(1); return 1
41}