code wiki / _hdl_build / nx_pm_cockpit_gate.nx

nx_pm_cockpit_gate.nx source

↩ module page · 145 lines · 7348 B

1// nx_pm_cockpit_gate.nx -- gate for the PM cockpit core (nx_pm_roi_lib). On nx_gate_verdict 2// (D001 migrate-on-touch law: new gates import the canonical verdict lib). 3// Proves: ROI KAT + measured-override + FAIL-CLOSED no-fabrication when the rates plane is 4// absent (the honesty core) - mixed-schema debt scan (legacy 5-col + v2 7-col) - third-party 5// classifier - frontier scan KAT - live ecomat rollup passthrough on a seeded /tmp store - 6// emitters carry envelope/UNSEEDED/ESTIMATE markers - PRODUCTION-SHAPE scale tooth (600-row 7// debt plane >> real ~60; scale-law: fixture gates never prove scale, so one tooth must). 8// license_tier: ORIGINAL No hw writes (Rule 26). expect_exit: 0 9import "nx_pm_roi_lib.nx" 10import "nx_gate_verdict.nx" 11 12const G_BUF: i64 = 524288 13const G_SCALE_N: i64 = 600 14 15func g_mkrow(b: *u8, o: i64, s: *u8) -> i64 { return ss_cat(b, o, s) } 16 17func main(argc: i64, argv: *i64) -> i64 { 18 let ctr: *i64 = gv_ctr() 19 gv_head("nx_pm_cockpit_gate -- PM cockpit core: honest ROI, mixed-schema debt, frontier, live maturity, emitters, scale" as *u8) 20 21 let m: *i64 = sys_mmap(64*8) as *i64 22 var z: i64 = 0 23 while z < 64 { m[z] = 0; z = z + 1 } 24 25 // ---- T1 ROI KAT + measured override: 3x2000 + 2x600 declared, tools-measured 5x400 => 9200 26 let rb: *u8 = sys_mmap(G_BUF) 27 var rn: i64 = 0 28 rn = g_mkrow(rb, rn, "roi001\thosting\tdeclared\t3\t2000\tvs managed site $20/mo\n" as *u8) 29 rn = g_mkrow(rb, rn, "roi002\temail\tdeclared\t2\t600\tvs workspace $6/user/mo\n" as *u8) 30 rn = g_mkrow(rb, rn, "roi003\ttools upkeep\tmeasured:tools\t0\t400\tper live tool\n" as *u8) 31 m[S_TOOLS] = 5 32 let rl: *i64 = sys_mmap(24*11*8) as *i64 33 let nr: i64 = pm_roi_compute(rb, rn, m, rl, 24) 34 var t1: i64 = 0 35 if nr == 3 { if m[S_ROICENTS] == 9200 { if m[S_ROIAV] == 1 { if rl[2*11] == 5 { t1 = 1 } } } } 36 gv_check("T1 roi-kat-with-measured-override" as *u8, t1, ctr) 37 38 // ---- T2 FAIL-CLOSED: absent rates plane => UNSEEDED, zero lines, zero cents (no fabrication) 39 var t2: i64 = 0 40 let m2: *i64 = sys_mmap(64*8) as *i64 41 z = 0 42 while z < 64 { m2[z] = 0; z = z + 1 } 43 let n2: i64 = sts_load("/tmp/pmnosuchplane-" as *u8, rb, G_BUF) 44 pm_roi_compute(rb, n2, m2, rl, 24) 45 if n2 == 0 { if m2[S_ROIAV] == 0 { if m2[S_ROICENTS] == 0 { if m2[S_ROILINES] == 0 { t2 = 1 } } } } 46 gv_check("T2 roi-missing-plane-fail-closed" as *u8, t2, ctr) 47 48 // ---- T3 mixed-schema debt scan: legacy open sev7 (3p) + legacy eaten + v2 open sev8 + v2 closed 49 let db: *u8 = sys_mmap(G_BUF) 50 var dn: i64 = 0 51 dn = g_mkrow(db, dn, "1784400001\t7\tcoordination\topen\tark sweeps via stock git legs\n" as *u8) 52 dn = g_mkrow(db, dn, "1784400002\t5\tcron\teaten\told note\n" as *u8) 53 dn = g_mkrow(db, dn, "D001\tgate dups\t8\topen\treferee\truntime/\tDRY verdict lib remains\n" as *u8) 54 dn = g_mkrow(db, dn, "D009\tfrontier stale\t7\tclosed\tpm\tknowledge/\treseeded\n" as *u8) 55 let dt: *i64 = sys_mmap(PM_TOP_DEBTS*3*8) as *i64 56 let ndt: i64 = pm_debt_scan(db, dn, m, dt) 57 var t3: i64 = 0 58 if m[S_DTOT] == 4 { if m[S_DOPEN] == 2 { if m[S_DSEV] == 2 { if m[S_D3P] == 1 { if ndt == 2 { t3 = 1 } } } } } 59 gv_check("T3 debt-mixed-schema-counts" as *u8, t3, ctr) 60 61 // ---- T4 third-party classifier positive + negative 62 var t4: i64 = 0 63 let s1: *u8 = "rides stock git under the hood" as *u8 64 let s2: *u8 = "our organ leaks an fd on flush" as *u8 65 if pm_is_3p(s1, 0, pm_len(s1)) == 1 { if pm_is_3p(s2, 0, pm_len(s2)) == 0 { t4 = 1 } } 66 gv_check("T4 third-party-classifier-pos-neg" as *u8, t4, ctr) 67 68 // ---- T5 frontier scan KAT: D + open big rock (w9) + X 69 let fb: *u8 = sys_mmap(G_BUF) 70 var fn_: i64 = 0 71 fn_ = g_mkrow(fb, fn_, "F001\talpha done\t8\t1\tpm\tD\t-\t-\tauto\n" as *u8) 72 fn_ = g_mkrow(fb, fn_, "F002\tbeta rock\t9\t2\tpm\tT\tF001\t-\tauto\n" as *u8) 73 fn_ = g_mkrow(fb, fn_, "F003\tgamma ext\t7\t1\tpm\tX\t-\t-\tauto\n" as *u8) 74 let ft: *i64 = sys_mmap(PM_TOP_ROCKS*5*8) as *i64 75 let nft: i64 = pm_frontier_scan(fb, fn_, m, ft) 76 var t5: i64 = 0 77 if m[S_FTOT] == 3 { if m[S_FDONE] == 1 { if m[S_FEXT] == 1 { if m[S_FOPEN] == 1 { if nft == 1 { if ft[0] == 9 { t5 = 1 } } } } } } 78 gv_check("T5 frontier-scan-kat" as *u8, t5, ctr) 79 80 // ---- T6 live ecomat rollup passthrough on a seeded /tmp store: (1+2)/(4+4) => 375 permil 81 let w: *i64 = ss_begin_cap(1048576) 82 ec_seed_one(w, 0, 0, 0, 1, 4, 5, 0, "gatedomA" as *u8, "bench" as *u8, "raise A" as *u8) 83 ec_seed_one(w, 1, 1, 0, 2, 4, 7, 0, "gatedomB" as *u8, "bench" as *u8, "raise B" as *u8) 84 let pfx: *u8 = "/tmp/pmecomat" as *u8 85 ss_commit(pfx, w, ss_next_segid(pfx)) 86 let eo: *i64 = sys_mmap(256) as *i64 87 em_rollup_store(pfx, "/tmp/pm_no_autolog" as *u8, eo, 0) 88 var t6: i64 = 0 89 if eo[0] == 375 { if eo[2] == 2 { t6 = 1 } } 90 gv_check("T6 ecomat-rollup-passthrough-375" as *u8, t6, ctr) 91 92 // ---- T6b maturity-next feedback: both below bar => 2 entries, heavier first-kept 93 let nv: *i64 = sys_mmap(PM_TOP_NEXT*2*8) as *i64 94 let nn: i64 = pm_maturity_next(pfx, nv, PM_TOP_NEXT) 95 var t6b: i64 = 0 96 if nn == 2 { t6b = 1 } 97 gv_check("T6b maturity-next-below-bar" as *u8, t6b, ctr) 98 99 // ---- T7 SCALE TOOTH (production shape): 600 legacy rows -- 10x the real ledger 100 var sn: i64 = 0 101 var i: i64 = 0 102 while i < G_SCALE_N { 103 sn = ss_catn(db, sn, 1784400000 + i) 104 sn = ss_cat(db, sn, "\t7\tscope\topen\tsynthetic scale row\n" as *u8) 105 i = i + 1 106 } 107 let m3: *i64 = sys_mmap(64*8) as *i64 108 z = 0 109 while z < 64 { m3[z] = 0; z = z + 1 } 110 let ndt3: i64 = pm_debt_scan(db, sn, m3, dt) 111 var t7: i64 = 0 112 if m3[S_DTOT] == G_SCALE_N { if m3[S_DOPEN] == G_SCALE_N { if m3[S_DSEV] == G_SCALE_N { if ndt3 == PM_TOP_DEBTS { t7 = 1 } } } } 113 gv_check("T7 scale-tooth-600-rows-top-capped" as *u8, t7, ctr) 114 115 // ---- T8 JSON emitter: UNSEEDED path carries no ESTIMATE; seeded path carries ESTIMATE + total 116 let ob: *u8 = sys_mmap(PM_OUT_CAP) 117 let on: i64 = pm_emit_json(ob, m2, fb, ft, nft, db, dt, 0, rb, rl, 0, pfx, nv, nn) 118 var t8: i64 = 0 119 if el_contains(ob, on, "\"envelope\"" as *u8) == 1 { 120 if el_contains(ob, on, "UNSEEDED" as *u8) == 1 { 121 if el_contains(ob, on, "ESTIMATE" as *u8) == 0 { t8 = 1 } 122 } 123 } 124 gv_check("T8 json-unseeded-no-estimate" as *u8, t8, ctr) 125 let on2: i64 = pm_emit_json(ob, m, fb, ft, nft, db, dt, ndt, rb, rl, nr, pfx, nv, nn) 126 var t8b: i64 = 0 127 if el_contains(ob, on2, "\"status\":\"ESTIMATE\"" as *u8) == 1 { 128 if el_contains(ob, on2, "\"monthly_cents\":9200" as *u8) == 1 { t8b = 1 } 129 } 130 gv_check("T8b json-seeded-estimate-total" as *u8, t8b, ctr) 131 132 // ---- T9 HTML emitter: page skeleton + honest markers 133 let hn: i64 = pm_emit_html(ob, m, fb, ft, nft, db, dt, ndt, rb, rl, nr, pfx, nv, nn) 134 var t9: i64 = 0 135 if el_contains(ob, hn, "PM Cockpit" as *u8) == 1 { 136 if el_contains(ob, hn, "measured, never asserted" as *u8) == 1 { 137 if el_contains(ob, hn, "ESTIMATE" as *u8) == 1 { t9 = 1 } 138 } 139 } 140 gv_check("T9 html-skeleton-honesty-markers" as *u8, t9, ctr) 141 142 let rc: i64 = gv_verdict("PM-COCKPIT-GATE" as *u8, ctr, "roi fail-closed + mixed-schema debt + live rollup + scale tooth" as *u8) 143 sys_exit(rc) 144 return rc 145}