code wiki / _hdl_build / nx_cms_census.nx
nx_cms_census.nx source
↩ module page · 132 lines · 5953 B
1// nx_cms_census.nx -- honest CMS "exceed WordPress" re-grade (W-RE-002/003), the CMS-domain twin of
2// nx_competitive_census. Replaces the RETRACTED binary EXCEED-WP=1000 with a MEASURED per-feature reach:
3// - reads the WP+plugins feature surface from knowledge/registry/cms_incumbent_ref.tsv (the QUESTIONS),
4// - COMPUTES each STATUS via re_has against the GATED evidence knowledge/status/cms_gate.log (the real
5// PASS records) -- NEVER tutor-asserted; a feature is PRESENT only if a gate proves it,
6// - writes knowledge/registry/cms_census.tsv + emits a CENSUSGATE line (the no-wave measured reach).
7// Self-validating: pos control "CMSGATE" MUST be PRESENT in the gate log, neg control MUST be ABSENT.
8// license_tier: ORIGINAL
9import "nx_syscalls.nx"
10import "nx_itoa_lib.nx" // shared MSB-first emitter (zero-alloc)
11import "nx_research_extract.nx"
12import "nx_benchmark.nx"
13const CC_MAGIC_400000: i64 = 400000
14const CC_MAGIC_80000: i64 = 80000
15const CC_MAGIC_300000: i64 = 300000
16
17const CC_SELF: *u8 = "knowledge/status/cms_gate.log"
18const CC_REF: *u8 = "knowledge/registry/cms_incumbent_ref.tsv"
19const CC_OUT: *u8 = "knowledge/registry/cms_census.tsv"
20const CC_MAXF: i64 = 256
21
22func cc_msg(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(1, s, n); return 0 }
23// MIGRATED to the shared emitter (debt 1785563586). The old body mmapped a scratch buffer
24// per call and never freed it. At PAGE granularity that is 4096B leaked PER CALL -- the
25// defect that took 28.5GB of a 36GB host in nx_ts_lumadiff (2MB input, ~3.66M calls).
26// nxi_* is MSB-first, allocates NOTHING, and emits identical bytes including the sign.
27func cc_putn(v: i64) -> i64 { nxi_out(v); return 0 }
28
29func cc_read_file(path: *u8, buf: *u8, cap: i64) -> i64 {
30 let fd: i64 = sys_openat_rd(path)
31 if fd < 0 { return 0 - 1 }
32 var tot: i64 = 0
33 var r: i64 = 1
34 while r > 0 {
35 let dst: *u8 = ((buf as i64) + tot) as *u8
36 r = sys_read(fd, dst, cap - tot)
37 if r > 0 { tot = tot + r }
38 }
39 sys_close(fd)
40 return tot
41}
42
43func cc_scan_to(buf: *u8, n: i64, start: i64, delim: i64) -> i64 {
44 var i: i64 = start
45 var s: i64 = 1
46 while s == 1 { if i >= n { s = 0 } else { if buf[i] == (delim as u8) { s = 0 } else { i = i + 1 } } }
47 return i
48}
49
50func cc_app(dst: *u8, off: i64, s: *u8) -> i64 { var i: i64 = 0; while s[i] != (0 as u8) { dst[off+i] = s[i]; i = i + 1 } return off + i }
51
52func cc_vstr(v: i64) -> *u8 {
53 if v == BM_AHEAD { return "AHEAD" as *u8 }
54 if v == BM_PARITY { return "PARITY" as *u8 }
55 if v == BM_BEHIND { return "BEHIND" as *u8 }
56 if v == BM_DIFFERENTIATED { return "DIFFERENTIATED" as *u8 }
57 return "REFUSE-cherrypick" as *u8
58}
59
60func main() -> i64 {
61 let sm: *u8 = sys_mmap(CC_MAGIC_400000)
62 let smn: i64 = cc_read_file(CC_SELF, sm, CC_MAGIC_400000)
63 if smn <= 0 { cc_msg("CENSUSGATE verdict=RED reason=gatelog-unreadable\n" as *u8); return 1 }
64 let rb: *u8 = sys_mmap(CC_MAGIC_80000)
65 let rbn: i64 = cc_read_file(CC_REF, rb, CC_MAGIC_80000)
66 if rbn <= 0 { cc_msg("CENSUSGATE verdict=RED reason=ref-unreadable\n" as *u8); return 1 }
67
68 let feat: *i64 = sys_mmap(8 * CC_MAXF) as *i64
69 let prob: *i64 = sys_mmap(8 * CC_MAXF) as *i64
70 let unin: *i64 = sys_mmap(8 * CC_MAXF) as *i64
71 var nf: i64 = 0
72 var p: i64 = 0
73 while p < rbn {
74 if rb[p] == (35 as u8) { let e: i64 = cc_scan_to(rb, rbn, p, 10); p = e + 1 }
75 else { if rb[p] == (10 as u8) { p = p + 1 }
76 else {
77 let a0: i64 = p
78 let t1: i64 = cc_scan_to(rb, rbn, a0, 9); rb[t1] = 0 as u8
79 let a1: i64 = t1 + 1
80 let t2: i64 = cc_scan_to(rb, rbn, a1, 9); rb[t2] = 0 as u8
81 let a2: i64 = t2 + 1
82 let t3: i64 = cc_scan_to(rb, rbn, a2, 10); rb[t3] = 0 as u8
83 if nf < CC_MAXF { feat[nf] = (rb as i64) + a0; prob[nf] = (rb as i64) + a1; unin[nf] = (rb as i64) + a2; nf = nf + 1 }
84 p = t3 + 1
85 } }
86 }
87
88 let ob: *u8 = sys_mmap(CC_MAGIC_300000)
89 var o: i64 = 0
90 o = cc_app(ob, o, "# AUTHORED BY nx_cms_census (W-RE-002/003) -- per-feature reach COMPUTED from cms_gate.log via re_has. Replaces the retracted binary EXCEED-WP=1000. NOT tutor-asserted.\n" as *u8)
91 var present: i64 = 0
92 var i: i64 = 0
93 while i < nf {
94 let st: i64 = re_has(sm, smn, (prob[i]) as *u8)
95 if st == 1 { o = cc_app(ob, o, "PRESENT\t" as *u8); present = present + 1 } else { o = cc_app(ob, o, "ABSENT\t" as *u8) }
96 o = cc_app(ob, o, (feat[i]) as *u8)
97 o = cc_app(ob, o, "\t" as *u8)
98 o = cc_app(ob, o, (unin[i]) as *u8)
99 o = cc_app(ob, o, "\tcomputed:gate-has=" as *u8)
100 o = cc_app(ob, o, (prob[i]) as *u8)
101 o = cc_app(ob, o, "\n" as *u8)
102 i = i + 1
103 }
104
105 let fd: i64 = sys_openat_wr(CC_OUT, 420)
106 if fd < 0 { cc_msg("CENSUSGATE verdict=RED reason=out-unwritable\n" as *u8); return 1 }
107 sys_write(fd, ob, o)
108 sys_close(fd)
109
110 let cpos: i64 = re_has(sm, smn, "CMSGATE" as *u8)
111 let cneg: i64 = re_has(sm, smn, "zzqnonexistentcapability" as *u8)
112 let valid: i64 = bm_is_valid(nf, nf, 800)
113 var our_cov: i64 = 0
114 if nf > 0 { our_cov = (present * 1000) / nf }
115 let verdict: i64 = bm_verdict(valid, our_cov, 1000)
116
117 cc_msg("CENSUSGATE authored=organ source=cms_incumbent_ref.tsv features=" as *u8); cc_putn(nf)
118 cc_msg(" present=" as *u8); cc_putn(present)
119 cc_msg(" absent=" as *u8); cc_putn(nf - present)
120 cc_msg(" control_pos=" as *u8); cc_putn(cpos)
121 cc_msg(" control_neg=" as *u8); cc_putn(cneg)
122 cc_msg(" our_coverage_permil=" as *u8); cc_putn(our_cov)
123 cc_msg(" exceed_verdict=" as *u8); cc_msg(cc_vstr(verdict))
124
125 var ok: i64 = 1
126 if cpos != 1 { ok = 0 }
127 if cneg != 0 { ok = 0 }
128 if nf <= 0 { ok = 0 }
129 if ok == 1 { cc_msg(" verdict=GREEN\n" as *u8); return 0 }
130 cc_msg(" verdict=RED reason=control-or-empty\n" as *u8)
131 return 1
132}