nx_motion_gate.nx
buildroot/runtime/nx_motion_gate.nx
about
nx_motion_gate.nx -- THE /motion SURFACE'S REFEREE (2026-09-06): the ONE lib's rulers on planted inputs (typing by
magic, the multipart parser, form decoding, path shape, status rows, the renderers) and the job organ END TO END on a
box fixture this gate writes itself -- rig, render, export, digest -- run TWICE, so determinism is a tooth and not a
sentence, plus a refusal control (an OBJ upload must fail at the named stage with the named code). It never touches
the served daemon or a live job directory: every artifact lands under /tmp/nx_motion_gate/<clock>/.
NAMED FOR THE SURFACE, NOT THE DAEMON: it proves nx_motion_serve's rulers AND nx_motion_rig's pipeline, and it is
declared as both organs' gate in knowledge/organ_gate.conf. (Its first name, nx_motion_serve_gate, was refused by the
async launcher's deny-by-class bound because the segment "serve" reads as a daemon stem -- a verifier that exits was
denied for carrying its subject's name. That residual is filed against the bound; this gate's scope was the honest fix.)
license_tier: ORIGINAL expect_exit: 0
dependencies 5 imports · 0 importers
imports: nx_syscalls.nxnx_gate_verdict.nxnx_nxa.nxnx_boneheat_lib.nxnx_motion_lib.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
| 17 | const MG_ROOT: *u8 = "/tmp/nx_motion_gate" |
| 18 | const MG_RIG_ELF: *u8 = "_offc/nx_motion_rig.elf" |
| 19 | const MG_BOX_HX: i64 = 2000 // a 40 x 40 x 120 mm box in 0.01 mm units: a bar, which the peeler reads as two limbs |
| 20 | const MG_BOX_HY: i64 = 2000 |
| 21 | const MG_BOX_HZ: i64 = 6000 |
| 22 | const MG_BOX_VERTS: i64 = 8 |
| 23 | const MG_BOX_TRIS: i64 = 12 |
| 24 | const MG_CELLS: i64 = 48 |
| 25 | const MG_BUF: i64 = 65536 |
| 26 | const MG_SHA_LEN: i64 = 64 |
functions
| 28 | func mg_quad(tris: *i64, k: i64, a: i64, b: i64, c: i64, d: i64) -> i64 called by 1: mg_box |
| 34 | func mg_box(path: *u8) -> i64 |
| 65 | func mg_jobdir(root: *u8, name: *u8, kindname: *u8, inbytes: *u8, n: i64) -> *u8 |
| 76 | func mg_run_rig(jobdir: *u8) -> i64 |
| 85 | func main() -> i64 |