code wiki / _hdl_build / nx_treatment_gate.nx
nx_treatment_gate.nx
buildroot/runtime/_hdl_build/nx_treatment_gate.nx
about
nx_treatment_gate.nx -- GATE for the treatment ruler (nx_treatment_lib), driven IN-PROCESS on planted rows: a row
whose five fields all verify against planted allowlist, clock and roster text plus caller answers (COMPLETE), a row
with a dash (MISSING named), a row naming an allowlist row that is not GREEN (ABSENT named), an agent found on the
roster and not the clock, a row with a wrong key (FIELDS), a short row (FIELDS), a rung with no treat row
(UNDECLARED, labeled never refused), a board with no treat rows (NO-TREATMENT), the partition summing, and the
missing-list naming each field with its state. Every fixture asserts its own condition first.
license_tier: ORIGINAL No hw writes (Rule 26).
dependencies 3 imports · 0 importers
imports: nx_syscalls.nxnx_treatment_lib.nxnx_gate_verdict.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
| 12 | const G_I64: i64 = 8 |
| 13 | const G_PLAN: *u8 = "rung|R1|one|s1|d|Organ|1|-\nrung|R2|two|s2|d|Organ|1|-\nrung|R3|three|s3|d|Organ|1|-\nrung|R4|four|s4|d|Organ|1|-\nrung|R5|five|s5|d|Organ|1|-\nrung|R6|six|s6|d|Organ|1|-\ntreat|R1|mcp=nx_costcal|api=/api/tools/call name=nx_costcal|prim=nx_costest_lib|wf=costcal|agent=costcal\ntreat|R2|mcp=nx_costcal|api=-|prim=nx_costest_lib|wf=costcal|agent=costcal\ntreat|R3|mcp=nx_ghost|api=/api/tools/call name=nx_ghost|prim=nx_costest_lib|wf=costcal|agent=costcal\ntreat|R4|mcp=nx_costcal|api=/api/tools/call name=nx_costcal|prim=nx_costest_lib|wf=costcal|agent=nx_assets_gate\ntreat|R5|mcp=nx_costcal|apx=/api/tools/call|prim=nx_costest_lib|wf=costcal|agent=costcal\ntreat|R6|mcp=nx_costcal\n" |
| 14 | const G_ALLOW: *u8 = "# allowlist\nnx_costcal\t/volume1/x/nx_costcal.elf\tGREEN\nnx_ghost\t/volume1/x/nx_ghost.elf\tRED\nnx_other\t/volume1/x/nx_other.elf\tGREEN\n" |
| 15 | const G_CLOCK: *u8 = "costcal\t86400\tnx_costcal.elf\nother\t60\tnx_other.elf\n" |
| 16 | const G_ROSTER: *u8 = "; roster\nnx_assets_gate\nnx_other_gate\n" |
| 17 | const G_NOTREAT: *u8 = "rung|R1|one|s1|d|Organ|1|-\n" |
| 18 | const G_ROWS: i64 = 6 |
| 19 | const G_RUNGS: i64 = 6 |
| 20 | const G_ROW_R1: i64 = 0 |
| 21 | const G_ROW_R2: i64 = 1 |
| 22 | const G_ROW_R3: i64 = 2 |
| 23 | const G_ROW_R4: i64 = 3 |
| 24 | const G_ROW_R5: i64 = 4 |
| 25 | const G_ROW_R6: i64 = 5 |
| 26 | const G_MISSCAP: i64 = 256 |
functions
| 28 | func g_lit(s: *u8, dst: *u8) -> i64 |
| 35 | func g_streq(a: *u8, b: *u8) -> i64 |
| 43 | func main(argc: i64, argv: *i64) -> i64 |