nx_build_plan_test.nx
buildroot/runtime/nx_build_plan_test.nx
about
nx_build_plan_test.nx -- verify multi-process schedule solver.
Closed-form invariants:
(a) plan_new sane: n=0, capacity correct, printer_free zeroed
(b) add_part returns sequential ids; bad inputs return negative
(c) set_dep updates child's bitmap; self-dep rejected
(d) Independent-parts case (no deps, distinct processes):
all start at T=0 in parallel, total = max(each)
(e) Sequential dep chain (A->B->C): B starts at A.end, C at B.end
(f) Same-process serialization: 2 FDM parts share 1 printer,
second starts at first.end
(g) Cross-process Christus demo: FDM PLA body (240m) + DIW cement
(60m+1440m cure) + FDM metal (30m+2880m sinter) all start at
T=0 because distinct processes do not contend; total =
max(240, 1500, 2910) = 2910 min ≈ 48.5 hours
(h) Cycle detection: A<->B returns NX_BUILD_ERR_CYCLE
expect_exit: 0
license_tier: ORIGINAL
dependencies 3 imports · 0 importers
imports: nx_syscalls.nxnx_print_process.nxnx_build_plan.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
| none |
functions
| 25 | func main() -> i64 |