nx_motion_serve_gate.nx
buildroot/runtime/nx_motion_serve_gate.nx
about
nx_motion_serve_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_serve_gate/<clock>/.
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
| 13 | const MG_ROOT: *u8 = "/tmp/nx_motion_serve_gate" |
| 14 | const MG_RIG_ELF: *u8 = "_offc/nx_motion_rig.elf" |
| 15 | 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 |
| 16 | const MG_BOX_HY: i64 = 2000 |
| 17 | const MG_BOX_HZ: i64 = 6000 |
| 18 | const MG_BOX_VERTS: i64 = 8 |
| 19 | const MG_BOX_TRIS: i64 = 12 |
| 20 | const MG_CELLS: i64 = 48 |
| 21 | const MG_BUF: i64 = 65536 |
| 22 | const MG_SHA_LEN: i64 = 64 |
functions
| 24 | func mg_quad(tris: *i64, k: i64, a: i64, b: i64, c: i64, d: i64) -> i64 called by 1: mg_box |
| 30 | func mg_box(path: *u8) -> i64 |
| 61 | func mg_jobdir(root: *u8, name: *u8, kindname: *u8, inbytes: *u8, n: i64) -> *u8 |
| 72 | func mg_run_rig(jobdir: *u8) -> i64 |
| 81 | func main() -> i64 |