code wiki / _hdl_build / nx_flip_gate.nx
nx_flip_gate.nx
buildroot/runtime/_hdl_build/nx_flip_gate.nx
about
nx_flip_gate.nx -- THE REGRESSION GATE for the flip lane (organs 1-4).
Until now every one of the lane's ~26 proofs was a ONE-TIME hand verification: correct when made,
and completely unable to stop the next session silently breaking it. This makes them re-runnable.
Forks each live organ via tr_run_capture and asserts BOTH the exit code AND a required substring of
its output -- so a verdict that flips, a number that drifts, or a fail-closed path that stops firing
all turn this RED.
D001: emits a `verdict=` anchor so the ecosystem judge can read it.
license_tier: ORIGINAL No hw writes (Rule 26). expect_exit: 0
dependencies 4 imports · 0 importers
imports: nx_gate_lib.nxnx_flip_lib.nxnx_tool_run.nxnx_syscalls.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| 14 | const FG_OUT: i64 = 1 |
| 15 | const FG_OUTCAP: i64 = 262144 |
| 16 | const FG_AVCAP: i64 = 192 |
| 17 | const FG_TMPCAP: i64 = 32 |
| 18 | const FG_D0: i64 = 48 |
| 19 | const FG_BASE10: i64 = 10 |
| 20 | const FG_NL: i64 = 10 |
| 21 | const FG_BUF: i64 = 262144 |
| 22 | const FG_SCRATCH: i64 = 32 |
| 23 | const FG_EXIT_RED: i64 = 1 |
functions
| 34 | func fg_puts(s: *u8) -> i64 { return fx_puts(s) } |
| 35 | func fg_putn(n: i64) -> i64 { return fx_putn(n) } |
| 36 | func fg_bcat(b: *u8, o: i64, s: *u8) -> i64 { return fx_bcat(b, o, s) } |
| 37 | func fg_bcatn(b: *u8, o: i64, n: i64) -> i64 { return fx_bcatn(b, o, n) } |
| 39 | func fg_contains(h: *u8, n: i64, needle: *u8) -> i64 called by 1: fg_case |
| 61 | func fg_av(p: *u8, a1: *u8, a2: *u8, a3: *u8, a4: *u8, a5: *u8, a6: *u8, a7: *u8, a8: *u8, a9: *u8) -> *i64 |
| 79 | func fg_case(nm: *u8, path: *u8, av: *i64, want_exit: i64, want_sub: *u8, counts: *i64, pb: *u8, po: i64) -> i64 |
| 101 | func main(argc: i64, argv: *i64) -> i64 |