code wiki / (root) / nx_model_lane.nx

nx_model_lane.nx source

↩ module page · 73 lines · 2598 B

1// nx_model_lane.nx -- CLI for the sovereign model-lane lease (core = nx_model_lane_core). 2// usage: 3// nx_model_lane claim <holder> <est_mb> <pid> [ttl_sec] [leasepath] 4// nx_model_lane free <holder> [leasepath] 5// nx_model_lane status [leasepath] 6// pid = the WORKLOAD pid (shell scripts pass $$). Default lease = knowledge/status/ 7// model_lane.lease, default ttl 14400s. Exit code = rc map in the core header. 8// LAW (banked): every model-scale launch on this worker claims the lane FIRST; the 9// forge scripts (flp_t2_run.sh / flp_smoke_05b.sh) are the first wired consumers. 10// license_tier: ORIGINAL 11import "nx_model_lane_core.nx" 12const K_MAGIC_14400: i64 = 14400 13 14func main(argc: i64, argv: *i64) -> i64 { 15 if argc < 2 { 16 std_putln("usage: nx_model_lane claim <holder> <est_mb> <pid> [ttl] [lease] | free <holder> [lease] | status [lease]" as *u8) 17 sys_exit(12) 18 return 12 19 } 20 let a1: i64 = argv[1] 21 let verb: *u8 = a1 as *u8 22 if std_streq(verb, "claim" as *u8) == 1 { 23 if argc < 5 { std_putln("claim needs <holder> <est_mb> <pid>" as *u8); sys_exit(12); return 12 } 24 let a2: i64 = argv[2] 25 let holder: *u8 = a2 as *u8 26 let a3: i64 = argv[3] 27 let p3: *u8 = a3 as *u8 28 let est: i64 = std_atoi(p3) 29 let a4: i64 = argv[4] 30 let p4: *u8 = a4 as *u8 31 let pid: i64 = std_atoi(p4) 32 var ttl: i64 = K_MAGIC_14400 33 if argc >= 6 { 34 let a5: i64 = argv[5] 35 let p5: *u8 = a5 as *u8 36 ttl = std_atoi(p5) 37 } 38 var lease: *u8 = ML_LEASE_DEFAULT 39 if argc >= 7 { 40 let a6: i64 = argv[6] 41 lease = a6 as *u8 42 } 43 let rc: i64 = ml_claim(lease, holder, est, pid, ttl, ML_FLOOR_MB) 44 sys_exit(rc) 45 return rc 46 } 47 if std_streq(verb, "free" as *u8) == 1 { 48 if argc < 3 { std_putln("free needs <holder>" as *u8); sys_exit(12); return 12 } 49 let b2: i64 = argv[2] 50 let holder2: *u8 = b2 as *u8 51 var lease2: *u8 = ML_LEASE_DEFAULT 52 if argc >= 4 { 53 let b3: i64 = argv[3] 54 lease2 = b3 as *u8 55 } 56 let rc2: i64 = ml_free(lease2, holder2) 57 sys_exit(rc2) 58 return rc2 59 } 60 if std_streq(verb, "status" as *u8) == 1 { 61 var lease3: *u8 = ML_LEASE_DEFAULT 62 if argc >= 3 { 63 let c2: i64 = argv[2] 64 lease3 = c2 as *u8 65 } 66 let rc3: i64 = ml_status(lease3) 67 sys_exit(rc3) 68 return rc3 69 } 70 std_putln("unknown verb" as *u8) 71 sys_exit(12) 72 return 12 73}