code wiki / (root) / nx_workflow_knobs.nx

nx_workflow_knobs.nx source

↩ module page · 104 lines · 4248 B

1// nx_workflow_knobs.nx -- SOVEREIGN workflow -> clean capability card (piece 2 of the anti-ComfyUI ingest). 2// 3// Reads the extracted ComfyUI workflow JSON and DISTILLS the 68-node graph into the few knobs that matter: 4// model(gguf), loras(safetensors), and feature flags (audio / face-consistency / super-res / upscale). 5// This is the "collapse the node-soup into what it actually does" step -- the LLM understander generalizes 6// it later; this deterministic pass handles the known node families sovereignly. No 3rd party. 7// license_tier: ORIGINAL 8import "nx_syscalls.nx" 9import "nx_le.nx" 10import "nx_strconv.nx" 11const K_MAGIC_2097152: i64 = 2097152 12 13func wk_find(buf: *u8, len: i64, needle: *u8, nlen: i64, start: i64) -> i64 { 14 var i: i64 = start 15 while i <= len - nlen { 16 var j: i64 = 0 17 var ok: i64 = 1 18 while j < nlen { if buf[i + j] != needle[j] { ok = 0; j = nlen } else { j = j + 1 } } 19 if ok == 1 { return i } 20 i = i + 1 21 } 22 return 0 - 1 23} 24 25func wk_count(buf: *u8, len: i64, needle: *u8, nlen: i64) -> i64 { 26 var c: i64 = 0 27 var at: i64 = wk_find(buf, len, needle, nlen, 0) 28 while at >= 0 { c = c + 1; at = wk_find(buf, len, needle, nlen, at + nlen) } 29 return c 30} 31 32// 1 if `needle` occurs within `back` bytes before pos (used to skip URL-embedded matches in doc notes) 33func wk_near(buf: *u8, pos: i64, needle: *u8, nl: i64, back: i64) -> i64 { 34 var start: i64 = pos - back 35 if start < 0 { start = 0 } 36 let f: i64 = wk_find(buf, pos, needle, nl, start) 37 if f >= 0 { if f < pos { return 1 } } 38 return 0 39} 40 41// pos is inside a JSON quoted string; emit "prefix<value>\n" IFF the value is a plausible filename 42// (3..120 chars) -- skips giant MarkdownNote strings that also contain .gguf/.safetensors in URLs. 43func wk_emit_quoted(fd: i64, prefix: *u8, pl: i64, buf: *u8, pos: i64) -> i64 { 44 var a: i64 = pos 45 while a > 0 { if buf[a] == 0x22 { a = 0 - a } else { a = a - 1 } } 46 if a >= 0 { return 0 } 47 a = 0 - a 48 var b: i64 = pos 49 while buf[b] != 0x22 { b = b + 1 } 50 let vlen: i64 = b - a - 1 51 if vlen < 3 { return 0 } 52 if vlen > 120 { return 0 } 53 sys_write(fd, prefix, pl) 54 sys_write(fd, ((buf as i64) + a + 1) as *u8, vlen) 55 sys_write(fd, "\n" as *u8, 1) 56 return vlen 57} 58 59func wk_flag(fd: i64, buf: *u8, len: i64, label: *u8, ll: i64, needle: *u8, nl: i64) -> i64 { 60 let n: i64 = wk_count(buf, len, needle, nl) 61 sys_write(fd, label, ll) 62 if n > 0 { sys_write(fd, "= YES (" as *u8, 7) } else { sys_write(fd, "= no (" as *u8, 6) } 63 let dec: *u8 = sys_mmap(16) 64 let nd: i64 = nx_strconv_format_i64(n, dec) 65 sys_write(fd, dec, nd) 66 sys_write(fd, " nodes)\n" as *u8, 8) 67 return 0 68} 69 70func main() -> i64 { 71 let fd: i64 = sys_openat_rd("/tmp/extracted_workflow.json" as *u8) 72 if fd < 0 { return 30 } 73 let CAP: i64 = K_MAGIC_2097152 74 let buf: *u8 = sys_mmap(CAP) 75 var total: i64 = 0 76 var go: i64 = 1 77 while go == 1 { let r: i64 = sys_read(fd, ((buf as i64) + total) as *u8, CAP - total); if r <= 0 { go = 0 } else { total = total + r; if total >= CAP { go = 0 } } } 78 sys_close(fd) 79 if total < 100 { return 31 } 80 81 let ofd: i64 = sys_openat_wr("/tmp/capability_card.txt" as *u8, 0x1a4) 82 if ofd < 0 { return 32 } 83 sys_write(ofd, "=== CAPABILITY CARD (distilled from the workflow) ===\n" as *u8, 54) 84 85 // model(s): .gguf 86 var g: i64 = wk_find(buf, total, ".gguf" as *u8, 5, 0) 87 while g >= 0 { 88 wk_emit_quoted(ofd, "model : " as *u8, 8, buf, g) 89 g = wk_find(buf, total, ".gguf" as *u8, 5, g + 5) 90 } 91 var s: i64 = wk_find(buf, total, ".safetensors" as *u8, 12, 0) 92 while s >= 0 { 93 wk_emit_quoted(ofd, "weight: " as *u8, 8, buf, s) 94 s = wk_find(buf, total, ".safetensors" as *u8, 12, s + 12) 95 } 96 // feature flags 97 wk_flag(ofd, buf, total, "audio " as *u8, 9, "LTXVAudio" as *u8, 9) 98 wk_flag(ofd, buf, total, "face-lock" as *u8, 9, "Likeness" as *u8, 8) 99 wk_flag(ofd, buf, total, "super-res" as *u8, 9, "SuperResolution" as *u8, 15) 100 wk_flag(ofd, buf, total, "upscale " as *u8, 9, "Upsampler" as *u8, 9) 101 wk_flag(ofd, buf, total, "img2vid " as *u8, 9, "ImgToVideo" as *u8, 10) 102 sys_close(ofd) 103 return 0 104}