nx_extllm.nx
buildroot/runtime/nx_extllm.nx
about
nx_extllm.nx -- THE EGRESS WARDEN: the front door every external-model call must pass.
Rungs XL1 (terms ledger) + XL2 (egress classifier) of /compare/extllm -- the CODE half of two conf files
authored 2026-08-24 whose reader never landed. MEASURED 2026-08-25 before building: xl_egress is ABSENT
over 61,475 files (coverage_complete=1 corpus_complete=1), and NO source in the 23,235-file corpus even
names extllm_terms.conf -- 13 fully-pinned provider rows sitting inert with zero readers.
Every third-party LLM vendor host is likewise ABSENT-PROVEN, so there is no egress path in the estate
today. That is the rare chance to put the guard in the path BEFORE the path exists.
THE CUMULATIVE BOUND IS THE POINT: splitting work into parts defeats a SINGLE call and does nothing about
aggregation ACROSS calls. Motro, Marks and Jajodia (ESORICS 1994) describe their controlled-disclosure
system as foiling attempts to attack secrets by breaking queries into sequences of smaller requests.
Splitting is the attack that literature answers, not the answer. The odometer is the mechanism.
NOT differential privacy: a DP epsilon is quantified over the coin flips of a randomised mechanism
(Dwork and Roth, Definition 2.4). A verbatim fragment has no coins, so epsilon is infinity here and every
composition theorem is vacuous. This organ prints BYTES, which it can measure, never an epsilon.
terms <provider> <tier> <use> -- may this provider serve this use class
classify <path> <sha256> -- U or C for one path against the operator manifest
spent <provider> <ledger> -- cumulative bytes this provider has EVER been shown
selftest -- gv_verdict gate, in-memory fixtures, no shared state
exit 0 ALLOW / 1 REFUSE / 3 UNKNOWN-REFUSED / 2 usage. license_tier: ORIGINAL. No hw writes (Rule 26).
dependencies 5 imports · 0 importers
imports: nx_extllm_lib.nxnx_estate_path.nxnx_gate_verdict.nxnx_sovjson_lib.nxnx_syscalls.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| 26 | const XE_OUT: i64 = 8192 |
| 27 | const XE_USAGE: i64 = 2 |
| 28 | const XE_PATH: i64 = 1024 |
| 33 | const XE_ESC_NAME: i64 = 64 |
| 34 | const XE_ESC_USE: i64 = 32 |
| 35 | const XE_ESC_PATH: i64 = 200 |
| 36 | const XE_SPAN_BYTES: i64 = 16 |
| 37 | const XE_FIX_BUF: i64 = 4096 |
| 38 | const XE_FIX_EMPTY: i64 = 64 |
functions
| 46 | func xe_read_estate(p: *u8, out_len: *i64) -> *u8 |
| 56 | func xl_terms_ledger(q: *u8, n: i64, provider: *u8, tier: *u8, use: i64) -> i64 calls 1: xl_use_verdict |
| 59 | func xl_egress_class(q: *u8, n: i64, path: *u8, actual_sha: *u8) -> i64 calls 1: xl_class_of |
| 63 | func xe_use_code(s: *u8) -> i64 |
| 70 | func xe_emit_terms(prov: *u8, tier: *u8, use: *u8, v: i64, trains: i64, out: *u8) -> i64 |
| 87 | func xe_emit_class(path: *u8, cls: i64, rows: i64, out: *u8) -> i64 |
| 106 | func xe_selftest() -> i64 |
| 157 | func main(argc: i64, argv: *i64) -> i64 |