code wiki / _hdl_build / nx_buildq_gate.nx

nx_buildq_gate.nx

buildroot/runtime/_hdl_build/nx_buildq_gate.nx

10035 B144 linesdepth 5pulls 7 transitivereach 0 importersview sourcekind gate/proof
docsdependenciesstructsconstsfunctions

about

nx_buildq_gate.nx -- the REFEREE for nx_buildq (deploy DL9 bq_dedupe_target, 2026-09-02). Drives the built organ against the REAL nx_store_put on fixture planes under /tmp and asserts: one target enqueued twice is ONE row (by id) and the second add SAYS so; `close` turns a queued row closed in place with its reason; a fired row is left alone; nothing to close is a named NO-ROW with exit 0; an unsafe target is refused; and the pure row finder matches the exact id (BQ-t1 never matches BQ-t10). Every plane assertion re-reads the plane through the store verb, never the organ's receipt. nx_buildq_gate [subject-elf] [store-elf] defaults _build/nx_buildq.sov.elf and _build/nx_store_put.sov.elf license_tier: ORIGINAL. Writes only under /tmp/nx_buildq_gate/. No hw writes.

dependencies 4 imports · 0 importers

nx_syscalls.nx nx_gate_verdict.nx nx_gatekit_lib.nx nx_tool_run.nx nx_buildq_gate.nx

imports: nx_syscalls.nxnx_gate_verdict.nxnx_gatekit_lib.nxnx_tool_run.nx

imported by: nobody (leaf or entry point)

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

main gv_head gv_puts sys_write 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_need gv_puts ↻ gk_exists sys_openat_rd sys_close gk_mkdir sys_mkdir sys_mmap ↻ qg_run sys_mmap ↻ gk_len tr_run_capture_to tr_run_capture_tr tr_run_capture_core tr_run_capture_core_owned tr_run_capture_core_eviden gv_check gv_puts ↻ gk_out_has gk_len ↻

structs

none

consts

14const QG_CAP: i64 = 262144
15const QG_I64: i64 = 8
16const QG_ARGV: i64 = 16
17const QG_TIMEOUT_MS: i64 = 60000
18const QG_ROOT: *u8 = "/tmp/nx_buildq_gate"
19const QG_QUEUE: *u8 = "/tmp/nx_buildq_gate/deployq-"
20const QG_PLAN: *u8 = "/tmp/nx_buildq_gate/plan-build-"

functions

22func qg_run(elf: *u8, a1: *u8, a2: *u8, a3: *u8, a4: *u8, a5: *u8, a6: *u8, a7: *u8, a8: *u8, a9: *u8, out: *u8, outlen: *i64) -> i64
36func qg_load(store: *u8, out: *u8, outlen: *i64) -> i64
called by 1: main calls 1: qg_run
40func qg_rows_with_id(dump: *u8, n: i64, id: *u8) -> i64
called by 1: main calls 2: gk_lengk_eol
57func qg_status_of(dump: *u8, n: i64, id: *u8, st: *u8, cap: i64) -> i64
called by 1: main calls 2: gk_lengk_eol
80func main(argc: i64, argv: *i64) -> i64