code wiki / _hdl_build / nx_editor_validate_gate.nx

nx_editor_validate_gate.nx source

↩ module page · 58 lines · 3164 B

1// nx_editor_validate_gate.nx -- the editor GUARANTEES valid + accessible layouts (a capability mature editors lack). 2// Detects violations, enforces validity, fixes sub-target buttons; the exceed is on CAPABILITY (better-at-job), not 3// sovereignty. 100% sovereign. expect_exit: 0 4import "nx_syscalls.nx" 5import "nx_sitegate_emit_lib.nx" 6import "nx_editor_validate.nx" 7import "nx_exceed_standard.nx" 8 9 10func put(c: *i64, i: i64, k: i64, x: i64, y: i64, w: i64, h: i64) -> i64 { c[i*5+0]=k; c[i*5+1]=x; c[i*5+2]=y; c[i*5+3]=w; c[i*5+4]=h; return 0 } 11 12func main() -> i64 { 13 let tot: *i64 = sys_mmap(32) as *i64 14 tot[0]=0; tot[1]=0 15 let c: *i64 = sys_mmap(512) as *i64 16 let cw: i64 = 800; let ch: i64 = 600 17 gw("=== nx_editor_validate_gate -- editor GUARANTEES valid + accessible layouts (capability) ===\n" as *u8) 18 19 // V1 a clean layout has 0 violations 20 put(c, 0, 1, 40, 8, 200, 48); put(c, 1, 3, 40, 80, 160, 44); put(c, 2, 2, 40, 140, 360, 80) 21 let v1: i64 = ev_violations(c, 3, cw, ch) 22 gw(" clean layout violations=" as *u8); gn(v1); gw("\n" as *u8) 23 var v1ok: i64 = 0; if v1 == 0 { v1ok = 1 } 24 t_row("V1 a valid layout reports 0 violations" as *u8, v1ok, tot) 25 26 // V2 a broken layout is DETECTED: off-canvas heading + 20px button (sub-target) + zero-width element 27 put(c, 0, 1, 900, 8, 200, 48); put(c, 1, 3, 40, 80, 20, 20); put(c, 2, 2, 40, 140, 0, 80) 28 let v2: i64 = ev_violations(c, 3, cw, ch) 29 gw(" broken layout violations=" as *u8); gn(v2); gw(" (off-canvas + sub-44px button + zero-width)\n" as *u8) 30 var v2ok: i64 = 0; if v2 >= 3 { v2ok = 1 } 31 t_row("V2 broken layout DETECTED (violations > 0)" as *u8, v2ok, tot) 32 33 // V3 ev_enforce makes it valid by construction 34 ev_enforce(c, 3, cw, ch) 35 let v3: i64 = ev_violations(c, 3, cw, ch) 36 gw(" after enforce violations=" as *u8); gn(v3); gw("\n" as *u8) 37 var v3ok: i64 = 0; if v3 == 0 { v3ok = 1 } 38 t_row("V3 GUARANTEED-VALID: after enforce, violations = 0" as *u8, v3ok, tot) 39 40 // V4 a11y target enforced: the 20px button became >= 44x44 41 var v4: i64 = 0 42 if c[1*5+3] >= 44 { if c[1*5+4] >= 44 { v4 = 1 } } 43 t_row("V4 a11y-by-construction: sub-target button enforced to >= 44x44 (WCAG 2.5.5)" as *u8, v4, tot) 44 45 // V5 the CAPABILITY exceed (not sovereignty): editor guarantees valid+accessible output; incumbents allow invalid 46 let cx: i64 = es_is_sclass_exceed(ES_CAPABILITY, ES_CUSTOMER, v3ok, 0, 1) 47 t_row("V5 CAPABILITY exceed: guaranteed valid+accessible layout (vs editors that allow invalid)" as *u8, cx, tot) 48 49 // self-test: the detector really discriminates (a known-bad button is caught) 50 put(c, 0, 3, 0, 0, 10, 10) 51 var st: i64 = 0; if ev_target_ok(c, 0) == 0 { st = 1 } 52 t_row("S1 self-test: 10px button flagged sub-target (detector discriminates)" as *u8, st, tot) 53 54 gw("\nrows pass=" as *u8); gn(tot[0]); gw(" fail=" as *u8); gn(tot[1]); gw("\n" as *u8) 55 if tot[1] == 0 { gw("VERDICT=GREEN -- the editor guarantees valid + accessible layouts: a CAPABILITY mature editors lack (better-at-job, not sovereign).\n" as *u8); return 0 } 56 gw("VERDICT=RED\n" as *u8) 57 return 1 58}