code wiki / _hdl_build / nx_assign_next.nx

nx_assign_next.nx

buildroot/runtime/_hdl_build/nx_assign_next.nx

3794 B92 linesdepth 3pulls 3 transitivereach 0 importersview sourcekind tooltopic assign
docsdependenciesstructsconstsfunctions

about

nx_assign_next.nx -- the CONDUCTOR's SEQUENCER over the assignment queue (RACI-clean: this organ does NOT own prioritization -- the PM does). PRIORITY (the w column) is PM-OWNED DATA: seeded advisory 2026-06-11, re-scored by the PM's existing decision organs (nx_pm_decision_matrix WSJF via the PM-RESCORE queue card) -- this organ only READS it. SEQUENCING (this organ, Conductor verb): of the PM-ranked rows, which is RUNNABLE NOW (status TODO + every dep DONE)? That readiness gate is nx_pm_choose's READY rule applied to the durable queue file. DRIFT DETECT (Auditor view): STRUCTVIEW = the dep graph's own largest blocker; VIEWPOINT-DISCREPANCY suffix when structure outranks the PM column (>=3 dependents, w <= 7) -- surfaced for PM re-score, not acted on. TUTOR ROUTE: RAISEDHANDS = NOVEL rows (nx_pm_choose's TUTOR route over the queue; the only rows that cost Claude tokens -- batching them is the token-efficiency lever). Composes-not-duplicates: nx_pm_decision_matrix/nx_pm_choose (priority), nx_work_dispatcher (the attempt loop, Q3). Every beat appends ASSIGNNEXT / STRUCTVIEW / RAISEDHANDS rows to knowledge/status/assign_next.log. argv[1] = queue path override (gates use a scratch queue). license_tier: ORIGINAL

dependencies 2 imports · 0 importers

nx_syscalls.nx nx_assign_core.nx nx_assign_next.nx

imports: nx_syscalls.nxnx_assign_core.nx

imported by: nobody (leaf or entry point)

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

main an_newcx sys_mmap an_load sys_mmap ↻ sys_openat_rd sys_read sys_close an_id_at an_deps_at an_gate_at an_title_at anx_p sys_write sys_exit sys_openat_append an_pick an_deps_done an_deps_at ↻ sys_mmap ↻ an_find an_streq an_id_at ↻ anx_both anx_p ↻ anx_w sys_write ↻ an_id_at ↻ anx_bothn anx_wn sys_mmap ↻ sys_write ↻ an_top_blocker sys_mmap ↻ an_deps_at ↻ an_find ↻ sys_mmap ↻ an_novel sys_close ↻

structs

none

consts

none

functions

24func anx_p(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(1,s,n); return 0 }
called by 2: anx_bothmain calls 1: sys_write
25func anx_w(fd: i64, s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(fd,s,n); return 0 }
called by 1: anx_both calls 1: sys_write
26func anx_wn(fd: i64, v: i64) -> i64 { let bb: *u8=sys_mmap(28); var m: i64=v; if m<0{m=0-m; sys_write(fd,"-" as *u8,1)}; let t: *u8=sys_mmap(28); var k: i64=0; if m==0{t[0]=48;k=1}; while m>0{t[k]=(48+(m%10)) as u8;m=m/10;k=k+1}; var i: i64=0; while i<k{bb[i]=t[k-1-i];i=i+1}; sys_write(fd,bb,k); return 0 }
called by 1: anx_bothn calls 2: sys_mmapsys_write
28func anx_both(lfd: i64, s: *u8) -> i64
called by 1: main calls 2: anx_panx_w
34func anx_bothn(lfd: i64, v: i64) -> i64
called by 1: main calls 1: anx_wn
40func main(argc: i64, argv: *i64) -> i64