nx_release_recent_gate_t205.nx source
↩ module page · 71 lines · 4444 B
1// nx_release_recent_gate_t205.nx -- Validates and renders release data from multiple sources into a sorted, filtered output stream.
2import "nx_release_recent_candidate_t205.nx"
3import "nx_gate_verdict.nx"
4func rr_gate_has(b: *u8,n: i64,s: *u8) -> i64 {
5 var i: i64=0
6 let len: i64=al_slen(s)
7 while i+len<=n { if rd_slice_eq(b,i,len,s)==1 { return 1 };i=i+1 }
8 return 0
9}
10func main(argc: i64,argv: *i64) -> i64 {
11 let c: *i64=gv_ctr()
12 let counts: *i64=sys_mmap(RD_COUNTS*8) as *i64
13 let r: *ReleaseRecent=rr_new()
14 let old: *u8="log|1788370200|OLD|land|older row\n" as *u8
15 var i: i64=0
16 while i<RD_LIST_CAP+1 { rr_collect(r,old,al_slen(old),"" as *u8,"gameengine" as *u8,counts);i=i+1 }
17 let fresh: *u8="log|1788981600|NEW|land|new & <visible>\nlog|1788981601|M|measure|measurement\nlog|1788981602|R|retract|correction\n" as *u8
18 rr_collect(r,fresh,al_slen(fresh),"" as *u8,"graphics" as *u8,counts)
19 gv_check_eq("all land rows counted",counts[RD_C_LAND],RD_LIST_CAP+2,c)
20 gv_check_eq("all releases retained past former ceiling",r.count,RD_LIST_CAP+2,c)
21 rr_sort(r)
22 gv_check_eq("later board newest row displaces oldest",r.rows[RR_EPOCH],1788981600,c)
23 gv_check_eq("measurement counted",counts[RD_C_MEASURE],1,c)
24 gv_check_eq("retraction counted",counts[RD_C_RETRACT],1,c)
25 let out: *u8=sys_mmap(131072)
26 let n: i64=rr_render(r,out,131072,counts)
27 gv_check_eq("first rendered row is newest across boards",rd_slice_eq(out,0,al_slen("<li><b>graphics NEW</b>" as *u8),"<li><b>graphics NEW</b>" as *u8),1,c)
28 gv_check_eq("escaped text",rr_gate_has(out,n,"new & <visible>" as *u8),1,c)
29 gv_check_eq("all releases listed",counts[RD_C_LISTED],RD_LIST_CAP+2,c)
30 let tie: *u8="log|1788981600|TIE|land|later write\n" as *u8
31 rr_collect(r,tie,al_slen(tie),"" as *u8,"charsim" as *u8,counts)
32 rr_sort(r)
33 gv_check_eq("equal epochs use later collection order",al_streq(r.rows[RR_DOMAIN] as *u8,"charsim" as *u8),1,c)
34 let older: *u8="log|1788000000|ANCIENT|land|late imported old event\n" as *u8
35 rr_collect(r,older,al_slen(older),"" as *u8,"gameengine" as *u8,counts)
36 rr_sort(r)
37 gv_check_eq("old timestamp appended later cannot displace latest",r.rows[RR_EPOCH],1788981600,c)
38 let before: i64=counts[RD_C_LAND]
39 let bad: *u8="log|999999999999999999999999|BAD|land|overflow\nlog|1788981600||land|empty rung\nlog|1788981600|BAD|land\n" as *u8
40 rr_collect(r,bad,al_slen(bad),"" as *u8,"bad" as *u8,counts)
41 gv_check_eq("malformed rows refused",counts[RD_C_LAND],before,c)
42 rr_collect(r,fresh,al_slen(fresh),"2026-09-09" as *u8,"same-day" as *u8,counts)
43 gv_check_eq("strict since-date preserved",counts[RD_C_LAND],before,c)
44 out[0]=165 as u8
45 gv_check_eq("insufficient output capacity explicitly refused",rr_render(r,out,0,counts),-1,c)
46 gv_check_eq("zero capacity guard intact",out[0] as i64,165,c)
47 if argc==2 {
48 let size: *i64=sys_mmap(16) as *i64
49 let plan: *u8=sys_read_file(argv[1] as *u8,size)
50 gv_check_eq("real plan readable",(plan as i64)>0,1,c)
51 if (plan as i64)>0 {
52 let actual: *ReleaseRecent=rr_new()
53 let ac: *i64=sys_mmap(RD_COUNTS*8) as *i64
54 rr_collect(actual,plan,size[0],"2026-08-30" as *u8,"gameengine" as *u8,ac)
55 rr_sort(actual)
56 gv_check_eq("real plan has recent releases",actual.count>0,1,c)
57 var sorted: i64=1;i=1
58 while i<actual.count { if actual.rows[(i-1)*RR_FIELDS+RR_EPOCH]<actual.rows[i*RR_FIELDS+RR_EPOCH] { sorted=0 };i=i+1 }
59 gv_check_eq("real release timestamps descend",sorted,1,c)
60 gv_check_eq("September 9 work selected ahead of September 2",actual.rows[RR_EPOCH]>=1788912000,1,c)
61 let required: i64=rr_required(actual)
62 let rendered: *u8=sys_mmap(required)
63 let written: i64=rr_render(actual,rendered,required,ac)
64 gv_check_eq("real full history rendered",ac[RD_C_LISTED],ac[RD_C_LAND],c)
65 gv_check_eq("real complete output fits derived allocation",written>0 && written<required,1,c)
66 gv_kv("real_rendered_bytes",written)
67 gv_kv("real_landed",ac[RD_C_LAND]);gv_kv("real_newest_epoch",actual.rows[RR_EPOCH])
68 }
69 }
70 return gv_verdict("RELEASE-RECENT",c,"all releases newest first across boards; complete text; capacity derived from records; acceptance unchanged")
71}