code wiki / (root) / nx_manga_bubble_gate.nx

nx_manga_bubble_gate.nx

buildroot/runtime/nx_manga_bubble_gate.nx

7435 B147 linesdepth 11pulls 50 transitivereach 0 importersview sourcekind gate/prooftopic manga
docsdependenciesstructsconstsfunctions

about

nx_manga_bubble_gate.nx -- REFEREE for R2 (nx_manga_bubble). END-TO-END: forks the PROMOTED elf with a real argv and reads the PNG it produced back through our own decoder, so it measures the shipped binary and not a convenient in-process copy of the logic. It proves the DONE-RULE that was pre-declared on /compare/mangagen before the organ existed: "Bubble geometry + tails + sovereign TTF raster; overflow REFUSES, never silently clips." TWO NEGATIVE CONTROLS, because a green that never had a red is unverified: neg-control-white -- the same ink counter over a known-blank buffer must return ZERO, so the drew-something teeth cannot be tautologies that pass on any image. neg-control-overflow -- text that cannot fit must REFUSE (non-zero) AND leave NO output file, which is the difference between refusing and clipping. license_tier: ORIGINAL expect_exit: 0

dependencies 5 imports · 0 importers

nx_str.nx nx_syscalls.nx nx_tool_run.nx nx_img_to_rgb.nx nx_gate_verdict.nx nx_manga_bubble_gate.nx

imports: nx_str.nxnx_syscalls.nxnx_tool_run.nxnx_img_to_rgb.nxnx_gate_verdict.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main gv_ctr sys_mmap nxa_die sys_write sys_exit nxa_lock_take nxa_lock_addr sys_write ↻ nxa_lock_give nxa_lock_addr ↻ nxa_report_overrun sys_write ↻ nxa_dump_printable sys_write ↻ nxa_dump_sizes sys_write ↻ gv_head gv_puts sys_write ↻ sys_mmap ↻ sys_unlinkat tr_run_capture sys_mmap ↻ sys_pipe2 sys_fork sys_close sys_dup3 sys_execve_clean sys_close_inherited sys_close_inherited_proc sys_openat_rd sys_mmap ↻ sys_getdents64 dirent_reclen sys_close ↻ sys_munmap sys_execve tr_exec_failed sys_write ↻

structs

none

consts

17const MBG_CAP: i64 = 65536
18const MBG_W: i64 = 900
19const MBG_H: i64 = 600

functions

21func mbg_ink(rgb: *u8, w: i64, h: i64, x0: i64, y0: i64, x1: i64, y1: i64) -> i64
called by 1: main
42func mbg_exists(p: *u8) -> i64
called by 1: main calls 2: sys_openat_rdsys_close
48func main(argc: i64, argv: *i64) -> i64