code wiki / _hdl_build / nx_mmbench.nx

nx_mmbench.nx

buildroot/runtime/_hdl_build/nx_mmbench.nx

27351 B513 linesdepth 3pulls 3 transitivereach 0 importersview sourcekind bench
docsdependenciesstructsconstsfunctions

about

nx_mmbench.nx -- THE MEDIA-MANAGER + COMPANION CAPABILITY RULER. WHY: the ecosystem had NO product-grade ruler for either plane. nx_media_census grades the codec/room subsystem; nx_companion_census grades us against the OLD Elder AI platform. Neither answers "how far is our media manager + companion from the products people actually use". Without that number the build order is TASTE. This organ makes it ARITHMETIC. RULER = 12 REAL reference products (Jellyfin/Plex/Emby/Sonarr/qBittorrent/Kavita/yt-dlp/Immich for media; Character.AI/Replika/SillyTavern/ChatGPT-memory for companion). Each declares the capability vector it actually ships. We score OUR organs per capability and COMPUTE (never assert) coverage + a demand-ranked GAP QUEUE. That queue IS the build order. HONEST BY CONSTRUCTION (the anti-author-optimism teeth): - every HAVE must NAME an evidence artifact, and this organ STATS IT AT RUN TIME. A HAVE whose artifact is absent is LIAR-KILLED to GAP -- not warned about, DOWNGRADED. unproven = ABSENT. - a HAVE with NO named evidence is UNGROUNDED and capped at PARTIAL. You cannot assert a win. - coverage is COMPUTED from the surviving rows, so a liar-kill MOVES THE HEADLINE DOWN. - only capabilities some reference product actually ships count toward the denominator, so we cannot inflate the score by inventing axes nobody else has. - scan honesty (law L011): caps_scanned/titles_scanned/coverage_complete are emitted, never implied. Self-contained (imports only nx_syscalls) so it runs on the NAS as an MCP tool. license_tier: ORIGINAL expect_exit: 0

dependencies 1 imports · 0 importers

nx_mmbench_lib.nx nx_mmbench.nx

imports: nx_mmbench_lib.nx

imported by: nobody (leaf or entry point)

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

main streq reg_media cp reg_media2 cp ↻ reg_comp cp ↻ reg_wire wr reg_serving sv reg_titles nd aud have sys_openat_rd sys_close wired_ref wired have ↻ bin_ref sys_openat_rd ↻ sys_mmap sys_read sys_close ↻ sw sys_write sn sys_mmap ↻ sys_write ↻ vstr

structs

none

consts

25const NC: i64 = 56
26const NT: i64 = 12
27const DOM_MEDIA: i64 = 0
28const DOM_COMP: i64 = 1
29const GAPQ_SHOW: i64 = 14

functions

32func nd(mat: *i64, t: i64, a: i64, b: i64, c: i64, d: i64, e: i64, f: i64, g: i64, h: i64, i: i64, j: i64) -> i64
called by 1: reg_titles
45func cp(nm: *i64, dm: *i64, vv: *i64, ev: *i64, id: i64, name: *u8, dom: i64, v: i64, evp: *u8) -> i64
51func reg_media(nm: *i64, dm: *i64, vv: *i64, ev: *i64) -> i64
called by 1: main calls 1: cp
80func reg_media2(nm: *i64, dm: *i64, vv: *i64, ev: *i64) -> i64
called by 1: main calls 1: cp
106func reg_comp(nm: *i64, dm: *i64, vv: *i64, ev: *i64) -> i64
called by 1: main calls 1: cp
132func wr(w: *i64, id: i64, p: *u8) -> i64 { w[id]=p as i64; return 0 }
called by 1: reg_wire
136func sv(sb: *i64, nd: *i64, id: i64, binpath: *u8, needle: *u8) -> i64 { sb[id]=binpath as i64; nd[id]=needle as i64; return 0 }
called by 1: reg_serving
137func reg_serving(sb: *i64, nd: *i64) -> i64
called by 1: main calls 1: sv
147func reg_wire(w: *i64) -> i64
called by 1: main calls 1: wr
195func reg_titles(tnm: *i64, tdm: *i64, mat: *i64) -> i64
called by 1: main calls 1: nd
231func main(argc: i64, argv: *i64) -> i64