code wiki / _hdl_build / nx_cms_email_exceed_gate.nx
nx_cms_email_exceed_gate.nx source
↩ module page · 108 lines · 7848 B
1// nx_cms_email_exceed_gate.nx -- measured head-to-head EXCEED for email-crm-newsletter (consent-correctness
2// axis). Runs BOTH sides on the SAME 5 subscribe scenarios:
3// OURS = the shipped nx_cms_email double-opt-in engine (email_subscribe/confirm/unsubscribe/on_send_list)
4// INCUMBENT = the documented SINGLE-opt-in default baseline (on the send list as soon as subscribed, until
5// an explicit unsubscribe) -- the consent failure mode many ESPs default to (list-bombing /
6// GDPR+CAN-SPAM consent risk).
7// Ground truth per scenario: on-send-list IFF the subscriber explicitly CONFIRMED with the CORRECT token and
8// has not unsubscribed. The nx_cms_exceed referee COMPUTES the verdict from the scores and CANNOT false-green
9// (self-tests R4-R6). Records a CMSEXCEED line ONLY on measured AHEAD + referee-clean. Exit 0 iff so.
10// HONEST counter-axis (named, not hidden): volumetric deliverability / sending scale = BEHIND a cloud ESP; the
11// win is consent-correctness + list-stays-on-box sovereignty. license_tier: ORIGINAL
12import "nx_cms_exceed.nx"
13import "nx_cms_email.nx"
14import "nx_syscalls.nx"
15
16func xg_w(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(1,s,n); return 0 }
17func xg_num(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;k=1}; while m>0{t[k]=48+(m%10);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 }
18func xg_cat(dst: *u8, off: i64, s: *u8) -> i64 { var o: i64=off; var k: i64=0; while s[k]!=(0 as u8){dst[o]=s[k];o=o+1;k=k+1} return o }
19func xg_catnum(dst: *u8, off: i64, v: i64) -> i64 { var o: i64=off; let t: *u8=sys_mmap(28); var m: i64=v; if m<0{m=0-m}; 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{dst[o]=t[k-1-i];o=o+1;i=i+1} return o }
20func xg_row(id: i64, ok: i64, what: *u8) -> i64 {
21 xg_w("XCDROW " as *u8); xg_num(id); xg_w(" " as *u8)
22 if ok==1 { xg_w("PASS " as *u8) } else { xg_w("FAIL " as *u8) }
23 xg_w(what); xg_w("\n" as *u8)
24 return ok
25}
26// incumbent single-opt-in oracle: on the list iff subscribed and not explicitly unsubscribed (confirm ignored)
27func xg_inc_onlist(unsubscribed: i64) -> i64 { if unsubscribed==1 { return 0 } return 1 }
28
29func main() -> i64 {
30 var pass: i64=0; var rows: i64=0
31 let list: *u8 = "andelinwest-news" as *u8
32 let email: *u8 = "jane@example.com" as *u8
33 let tok: i64 = email_confirm_token(list, email)
34 let wrongtok: i64 = email_confirm_token(list, "mallory@evil.com" as *u8) // a different (wrong) token
35
36 var our_correct: i64=0; var inc_correct: i64=0; let n: i64=5
37 var sup_should: i64=0; var sup_ours: i64=0; var sup_inc: i64=0 // "should-be-suppressed" sub-metric
38
39 // S1: fresh subscribe, never confirm -> must NOT be on send list
40 var s: i64 = email_subscribe()
41 var our: i64 = email_on_send_list(s); var truth: i64 = 0; var inc: i64 = xg_inc_onlist(0)
42 if our==truth { our_correct=our_correct+1 } if inc==truth { inc_correct=inc_correct+1 }
43 sup_should=sup_should+1; if our==0 { sup_ours=sup_ours+1 } if inc==0 { sup_inc=sup_inc+1 }
44
45 // S2: subscribe + confirm with WRONG token -> refused -> must NOT be on send list
46 s = email_subscribe(); s = email_confirm(s, wrongtok, list, email)
47 our = email_on_send_list(s); truth = 0; inc = xg_inc_onlist(0)
48 if our==truth { our_correct=our_correct+1 } if inc==truth { inc_correct=inc_correct+1 }
49 sup_should=sup_should+1; if our==0 { sup_ours=sup_ours+1 } if inc==0 { sup_inc=sup_inc+1 }
50
51 // S3: subscribe + confirm with CORRECT token -> on send list
52 s = email_subscribe(); s = email_confirm(s, tok, list, email)
53 our = email_on_send_list(s); truth = 1; inc = xg_inc_onlist(0)
54 if our==truth { our_correct=our_correct+1 } if inc==truth { inc_correct=inc_correct+1 }
55
56 // S4: subscribe + confirm + unsubscribe -> off
57 s = email_subscribe(); s = email_confirm(s, tok, list, email); s = email_unsubscribe(s)
58 our = email_on_send_list(s); truth = 0; inc = xg_inc_onlist(1)
59 if our==truth { our_correct=our_correct+1 } if inc==truth { inc_correct=inc_correct+1 }
60
61 // S5: another fresh subscribe, never confirm -> must NOT be on send list
62 s = email_subscribe()
63 our = email_on_send_list(s); truth = 0; inc = xg_inc_onlist(0)
64 if our==truth { our_correct=our_correct+1 } if inc==truth { inc_correct=inc_correct+1 }
65 sup_should=sup_should+1; if our==0 { sup_ours=sup_ours+1 } if inc==0 { sup_inc=sup_inc+1 }
66
67 let verdict: i64 = xcd_verdict(our_correct, inc_correct)
68 xg_w("HEAD-TO-HEAD email-crm-newsletter consent-correctness: ours=" as *u8); xg_num(our_correct)
69 xg_w("/" as *u8); xg_num(n); xg_w(" incumbent=" as *u8); xg_num(inc_correct); xg_w("/" as *u8); xg_num(n)
70 xg_w(" unconfirmed-suppressed ours=" as *u8); xg_num(sup_ours); xg_w("/" as *u8); xg_num(sup_should)
71 xg_w(" incumbent=" as *u8); xg_num(sup_inc); xg_w("/" as *u8); xg_num(sup_should)
72 xg_w(" verdict=" as *u8); xg_w(xcd_vname(verdict)); xg_w("\n" as *u8)
73
74 var ok: i64=0; if our_correct==n { ok=1 }
75 rows=rows+1; pass=pass+xg_row(0, ok, "ours fully correct (only confirmed-correct-token subscribers on list)" as *u8)
76 ok=0; if inc_correct<n { ok=1 }
77 rows=rows+1; pass=pass+xg_row(1, ok, "incumbent single-opt-in baseline fails (auto-lists unconfirmed)" as *u8)
78 ok=0; if verdict==XCD_AHEAD { ok=1 }
79 rows=rows+1; pass=pass+xg_row(2, ok, "measured verdict = AHEAD" as *u8)
80 ok=0; if sup_ours==sup_should { if sup_inc==0 { if sup_should>0 { ok=1 } } }
81 rows=rows+1; pass=pass+xg_row(3, ok, "consent axis: ours suppresses ALL unconfirmed, incumbent suppresses 0" as *u8)
82 ok=0; if xcd_referee_ok(XCD_AHEAD, our_correct, n)==1 { ok=1 }
83 rows=rows+1; pass=pass+xg_row(4, ok, "referee accepts honest AHEAD claim" as *u8)
84 ok=0; if xcd_referee_ok(XCD_AHEAD, n-1, n)==0 { if xcd_referee_ok(XCD_AHEAD, 1, 0)==0 { ok=1 } }
85 rows=rows+1; pass=pass+xg_row(5, ok, "referee rejects overclaim (less-wrong != ahead; no-measurement != win)" as *u8)
86 ok=0; if xcd_verdict(5,5)==XCD_PARITY { if xcd_verdict(3,7)==XCD_BEHIND { ok=1 } }
87 rows=rows+1; pass=pass+xg_row(6, ok, "harness reports PARITY/BEHIND honestly" as *u8)
88
89 xg_w("CMS-EMAIL-EXCEED-GATE rows=" as *u8); xg_num(rows); xg_w(" pass=" as *u8); xg_num(pass); xg_w("\n" as *u8)
90 if pass==rows {
91 if verdict==XCD_AHEAD {
92 if xcd_referee_ok(XCD_AHEAD, our_correct, n)==1 {
93 let line: *u8 = sys_mmap(400)
94 var lo: i64 = xg_cat(line, 0, "CMSEXCEED feature=email-crm-newsletter axis=consent-correctness model=double-opt-in ours=" as *u8)
95 lo = xg_catnum(line, lo, our_correct); lo = xg_cat(line, lo, "/" as *u8); lo = xg_catnum(line, lo, n)
96 lo = xg_cat(line, lo, " incumbent=" as *u8); lo = xg_catnum(line, lo, inc_correct); lo = xg_cat(line, lo, "/" as *u8); lo = xg_catnum(line, lo, n)
97 lo = xg_cat(line, lo, " unconfirmed-suppressed=" as *u8); lo = xg_catnum(line, lo, sup_ours); lo = xg_cat(line, lo, "/" as *u8); lo = xg_catnum(line, lo, sup_should)
98 lo = xg_cat(line, lo, " verdict=AHEAD (incumbent=documented single-opt-in default; list-on-box sovereignty AHEAD; volumetric deliverability/scale BEHIND, honest)\n" as *u8)
99 let gf: i64 = sys_openat_append("knowledge/status/cms_exceed.log" as *u8, 0x1a4)
100 if gf >= 0 { sys_write(gf, line, lo); sys_close(gf) }
101 xg_w("CMS-EMAIL-EXCEED-GATE verdict=AHEAD -- measured EXCEED recorded in cms_exceed.log\n" as *u8)
102 sys_exit(0); return 0
103 }
104 }
105 }
106 xg_w("CMS-EMAIL-EXCEED-GATE verdict=NOT-RECORDED (no fake-green)\n" as *u8)
107 sys_exit(1); return 1
108}