code wiki / _hdl_build / nx_compare_growth_capture_canon_20260910.nx
nx_compare_growth_capture_canon_20260910.nx source
↩ module page · 33 lines · 2422 B
1import "nx_tool_run.nx"
2import "nx_gatekit_lib.nx"
3import "nx_gate_verdict.nx"
4func cgr_capture(elf: *u8,domain: *u8,mode: *u8,path: *u8,ctr: *i64) -> i64 {
5 let av: *i64=sys_mmap(32) as *i64
6 av[0]=elf as i64; var n: i64=1
7 if (domain as i64)!=0 { av[n]=domain as i64; n=n+1 }
8 if (mode as i64)!=0 { av[n]=mode as i64; n=n+1 }
9 av[n]=0
10 let rc: i64=tr_run_redirect(elf,av,path,0 as *u8)
11 gv_check(path,rc==0,ctr); return rc
12}
13func main() -> i64 {
14 let ctr: *i64=gv_ctr(); gv_head("COMPARE-GROWTH-PUBLISHER-CAPTURE" as *u8)
15 let pre: i64=cgr_capture("_build/nx_compare_growth_json_owner_gate_20260910.sov.elf" as *u8,0 as *u8,0 as *u8,"/tmp/cg-redirect-preflight-canonical-growth-20260910.txt" as *u8,ctr)
16 var pn: i64=0; let pb: *u8=sys_read_file("/tmp/cg-redirect-preflight-canonical-growth-20260910.txt" as *u8,&pn)
17 gv_check("redirect retains complete native verdict" as *u8,gk_has(pb,"passed 9/9 verdict=GREEN" as *u8),ctr)
18 if pre!=0 { return 1 }
19 let elf: *u8="_build/nx_swcompare_matrix.sov.elf" as *u8
20 let rc: i64=cgr_capture(elf,"gameengine" as *u8,0 as *u8,"/tmp/cg-publisher-gate-canonical-growth-20260910.txt" as *u8,ctr)
21 if rc!=0 { return 1 }
22 cgr_capture(elf,"gameengine" as *u8,"json" as *u8,"/tmp/cg-publisher-gameengine-canonical-growth-20260910.json" as *u8,ctr)
23 cgr_capture(elf,"gameengine" as *u8,"html" as *u8,"/tmp/cg-publisher-gameengine-canonical-growth-20260910.html" as *u8,ctr)
24 var jn: i64=0; let jb: *u8=sys_read_file("/tmp/cg-publisher-gameengine-canonical-growth-20260910.json" as *u8,&jn)
25 var hn: i64=0; let hb: *u8=sys_read_file("/tmp/cg-publisher-gameengine-canonical-growth-20260910.html" as *u8,&hn)
26 gv_check("JSON complete growth key" as *u8,gk_has(jb,"\"capability_growth\"" as *u8),ctr)
27 gv_check("HTML growth disclosure" as *u8,gk_has(hb,"Learning and practice paths" as *u8),ctr)
28 gv_check("HTML scoped CSS emitted" as *u8,gk_has(hb,".capability-growth details[open] summary::after" as *u8),ctr)
29 gv_check("real growth graph valid" as *u8,gk_has(jb,"\"status\":\"authored_graph_valid\"" as *u8),ctr)
30 gv_check("GE31 model path present" as *u8,gk_has(jb,"GE31-model-delivery-20260910" as *u8),ctr)
31 gv_kv("json_bytes" as *u8,jn); gv_kv("html_bytes" as *u8,hn)
32 return gv_verdict("COMPARE-GROWTH-PUBLISHER-CAPTURE" as *u8,ctr,"private outputs only; no document root or serving ELF writes" as *u8)
33}