nx_mesh_run.nx source
↩ module page · 166 lines · 9348 B
1// nx_mesh_run.nx -- WORKER MESH CONDUCTOR: runs ONE job through the whole authorized pipeline by composing the REAL
2// mesh organs (not a re-implementation -- it fork+captures the proven elfs, gating each step on the next):
3// 1. AUTHORIZE -> nx_worker_dispatch (capability-scoped, deny-by-default): may this job touch gpu-image + gallery?
4// 2. ROUTE -> nx_mesh_lb (health-aware): pick a HEALTHY replica of the worker class (skip the down ones).
5// 3. EXECUTE -> nx_mesh_gen (sovereign POST->decode->gallery): generate + publish, zero shell.
6// Each milestone gates the next: a capability denial stops before routing; no healthy replica stops before executing.
7// This is the mesh as ONE usable system (the operator's "the NAS dispatches jobs" = a single command), composing the
8// individually-proven organs. Run from the nishihost cwd where the organ elfs live.
9//
10// CLI: run <prompt> <outpath> [caps] -> the full pipeline (caps default gpu-image,gallery; pass a lesser set to see
11// the capability gate DENY and stop the pipeline)
12// (no args) -> self-test GATE (the substring gate that drives step transitions)
13// license_tier: ORIGINAL
14import "nx_syscalls.nx"
15import "nx_runtime.nx"
16import "nx_tool_run.nx" // tr_run_capture (fork + argv + stdout capture)
17const K_MAGIC_4194304: i64 = 4194304
18
19func mr_slen(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n }
20func mr_puts(s: *u8) -> i64 { sys_write(1, s, mr_slen(s)); return 0 }
21func mr_contains(buf: *u8, n: i64, needle: *u8) -> i64 {
22 let m: i64 = mr_slen(needle)
23 if m == 0 { return 0 }
24 var i: i64 = 0
25 while i + m <= n {
26 var k: i64 = 0
27 while k < m { if buf[i+k] != needle[k] { k = m + 9 } else { k = k + 1 } }
28 if k == m { return 1 }
29 i = i + 1
30 }
31 return 0
32}
33func mr_run(path: *u8, av: *i64, out: *u8, cap: i64, olen: *i64) -> i64 {
34 av[0] = path as i64
35 return tr_run_capture(path, av, out, cap, olen)
36}
37
38// ---- SSE emit: the mesh-service response body. A daemon writes these frames to the HTTP response as the pipeline
39// runs; here they go to stdout so the streaming is provable + browser-EventSource-shaped. Quotes = byte 34. ----
40func mr_wb(b: i64) -> i64 { let x: *u8 = sys_mmap(1); x[0] = b as u8; sys_write(1, x, 1); return 0 }
41func mr_sse1(event: *u8, status: *u8) -> i64 {
42 mr_puts("event: " as *u8); mr_puts(event); mr_wb(10)
43 mr_puts("data: {" as *u8); mr_wb(34); mr_puts("status" as *u8); mr_wb(34); mr_wb(58); mr_wb(34); mr_puts(status); mr_wb(34); mr_wb(125); mr_wb(10); mr_wb(10)
44 return 0
45}
46func mr_sse2(event: *u8, status: *u8, key: *u8, val: *u8) -> i64 {
47 mr_puts("event: " as *u8); mr_puts(event); mr_wb(10)
48 mr_puts("data: {" as *u8); mr_wb(34); mr_puts("status" as *u8); mr_wb(34); mr_wb(58); mr_wb(34); mr_puts(status); mr_wb(34)
49 mr_wb(44); mr_wb(34); mr_puts(key); mr_wb(34); mr_wb(58); mr_wb(34); mr_puts(val); mr_wb(34)
50 mr_wb(125); mr_wb(10); mr_wb(10)
51 return 0
52}
53// run the pipeline emitting SSE per REAL milestone. returns 0 (result) / nonzero (denied/no-worker/fail).
54func mr_sse_pipeline(prompt: *u8, outpath: *u8, caps: *u8) -> i64 {
55 let out: *u8 = sys_mmap(K_MAGIC_4194304)
56 let olen: *i64 = sys_mmap(16) as *i64
57 let av: *i64 = sys_mmap(256) as *i64
58 mr_puts("retry: 5000\n\n" as *u8)
59 mr_sse2("accepted" as *u8, "accepted" as *u8, "prompt" as *u8, prompt)
60 // AUTHORIZE
61 av[1] = "dispatch" as *u8 as i64; av[2] = "image" as *u8 as i64; av[3] = "gallery" as *u8 as i64; av[4] = caps as i64; av[5] = 0
62 mr_run("./nx_worker_dispatch.elf" as *u8, av, out, K_MAGIC_4194304, olen)
63 if mr_contains(out, olen[0], "AUTHORIZED" as *u8) == 0 {
64 mr_sse2("denied" as *u8, "denied" as *u8, "reason" as *u8, "capability not granted" as *u8)
65 return 5
66 }
67 mr_sse1("authorized" as *u8, "authorized" as *u8)
68 // ROUTE
69 av[1] = "pick" as *u8 as i64; av[2] = "gpu-image" as *u8 as i64; av[3] = 0
70 mr_run("./nx_mesh_lb.elf" as *u8, av, out, K_MAGIC_4194304, olen)
71 if mr_contains(out, olen[0], "ROUTE" as *u8) == 0 {
72 mr_sse2("error" as *u8, "unavailable" as *u8, "reason" as *u8, "no healthy replica" as *u8)
73 return 6
74 }
75 mr_sse2("routed" as *u8, "routed" as *u8, "worker" as *u8, "gpu-image" as *u8)
76 // EXECUTE
77 mr_sse1("generating" as *u8, "generating" as *u8)
78 av[1] = "gen" as *u8 as i64; av[2] = prompt as i64; av[3] = outpath as i64; av[4] = 0
79 mr_run("./nx_mesh_gen.elf" as *u8, av, out, K_MAGIC_4194304, olen)
80 if mr_contains(out, olen[0], "WROTE" as *u8) == 0 {
81 mr_sse2("error" as *u8, "failed" as *u8, "reason" as *u8, "generation failed" as *u8)
82 return 7
83 }
84 mr_sse2("result" as *u8, "done" as *u8, "url" as *u8, outpath)
85 return 0
86}
87
88func mr_gate() -> i64 {
89 mr_puts("=== nx_mesh_run: mesh conductor (authorize -> route -> execute, composes the real organs) ===\n" as *u8)
90 var t1: i64 = 0
91 if mr_contains("xx AUTHORIZED yy" as *u8, 16, "AUTHORIZED" as *u8) == 1 { t1 = 1 }
92 var t2: i64 = 0
93 if mr_contains("DENIED capability" as *u8, 17, "AUTHORIZED" as *u8) == 0 { t2 = 1 }
94 var t3: i64 = 0
95 if mr_contains(" ROUTE -> [0] laptop" as *u8, 21, "ROUTE" as *u8) == 1 { t3 = 1 }
96 mr_puts(" T1 detects AUTHORIZED: " as *u8); if t1==1 { mr_puts("1" as *u8) } else { mr_puts("0" as *u8) }
97 mr_puts(" | T2 rejects DENIED: " as *u8); if t2==1 { mr_puts("1" as *u8) } else { mr_puts("0" as *u8) }
98 mr_puts(" | T3 detects ROUTE: " as *u8); if t3==1 { mr_puts("1" as *u8) } else { mr_puts("0" as *u8) }
99 mr_puts("\n" as *u8)
100 var pass: i64 = 0
101 if t1==1 { if t2==1 { if t3==1 { pass = 1 } } }
102 if pass == 1 { mr_puts("MESHRUNGATE verdict=GREEN (step-gating substring logic correct)\n" as *u8); return 0 }
103 mr_puts("MESHRUNGATE verdict=RED\n" as *u8)
104 return 1
105}
106
107func main(argc: i64, argv: *i64) -> i64 {
108 if argc >= 2 {
109 let cmd: *u8 = argv[1] as *u8
110 // "run" ?
111 if cmd[0]==(114 as u8) { if cmd[1]==(117 as u8) { if cmd[2]==(110 as u8) { if cmd[3]==(0 as u8) {
112 if argc < 4 { mr_puts("usage: nx_mesh_run run <prompt> <outpath> [caps]\n" as *u8); return 2 }
113 let prompt: *u8 = argv[2] as *u8
114 let outpath: *u8 = argv[3] as *u8
115 var caps: *u8 = "gpu-image,gallery" as *u8
116 if argc >= 5 { caps = argv[4] as *u8 }
117 let out: *u8 = sys_mmap(K_MAGIC_4194304)
118 let olen: *i64 = sys_mmap(16) as *i64
119 let av: *i64 = sys_mmap(256) as *i64
120
121 // ---- milestone 1: AUTHORIZE (capability-scoped, deny-by-default) ----
122 mr_puts("[mesh-run] 1/3 AUTHORIZE (capability=" as *u8); mr_puts(caps); mr_puts(")\n" as *u8)
123 av[1] = "dispatch" as *u8 as i64; av[2] = "image" as *u8 as i64; av[3] = "gallery" as *u8 as i64; av[4] = caps as i64; av[5] = 0
124 mr_run("./nx_worker_dispatch.elf" as *u8, av, out, K_MAGIC_4194304, olen)
125 if mr_contains(out, olen[0], "AUTHORIZED" as *u8) == 0 {
126 mr_puts(" DENIED by the capability gate -- pipeline STOPS (job never reached a worker)\n" as *u8)
127 sys_write(1, out, olen[0])
128 return 5
129 }
130 mr_puts(" authorized.\n" as *u8)
131
132 // ---- milestone 2: ROUTE (health-aware LB) ----
133 mr_puts("[mesh-run] 2/3 ROUTE (health-aware multi-worker)\n" as *u8)
134 av[1] = "pick" as *u8 as i64; av[2] = "gpu-image" as *u8 as i64; av[3] = 0
135 mr_run("./nx_mesh_lb.elf" as *u8, av, out, K_MAGIC_4194304, olen)
136 if mr_contains(out, olen[0], "ROUTE" as *u8) == 0 {
137 mr_puts(" NO HEALTHY REPLICA -- pipeline STOPS (would 503)\n" as *u8)
138 sys_write(1, out, olen[0])
139 return 6
140 }
141 sys_write(1, out, olen[0])
142
143 // ---- milestone 3: EXECUTE (sovereign gen -> gallery) ----
144 mr_puts("[mesh-run] 3/3 EXECUTE (sovereign POST->decode->gallery)\n" as *u8)
145 av[1] = "gen" as *u8 as i64; av[2] = prompt as i64; av[3] = outpath as i64; av[4] = 0
146 mr_run("./nx_mesh_gen.elf" as *u8, av, out, K_MAGIC_4194304, olen)
147 sys_write(1, out, olen[0])
148 if mr_contains(out, olen[0], "WROTE" as *u8) == 0 {
149 mr_puts(" generation FAILED (worker offline?) -- pipeline STOPS\n" as *u8)
150 return 7
151 }
152 mr_puts("[mesh-run] PIPELINE COMPLETE: authorized -> routed -> generated -> published " as *u8); mr_puts(outpath); mr_puts("\n" as *u8)
153 return 0
154 } } } }
155 // sse <prompt> <outpath> [caps] -- run the pipeline, emit a live SSE stream of the REAL milestones (service body)
156 if cmd[0]==(115 as u8) { if cmd[1]==(115 as u8) { if cmd[2]==(101 as u8) { if cmd[3]==(0 as u8) {
157 if argc < 4 { mr_puts("usage: nx_mesh_run sse <prompt> <outpath> [caps]\n" as *u8); return 2 }
158 var caps2: *u8 = "gpu-image,gallery" as *u8
159 if argc >= 5 { caps2 = argv[4] as *u8 }
160 return mr_sse_pipeline(argv[2] as *u8, argv[3] as *u8, caps2)
161 } } } }
162 mr_puts("usage: nx_mesh_run run|sse <prompt> <outpath> [caps] (no args = gate)\n" as *u8)
163 return 2
164 }
165 return mr_gate()
166}