code wiki / _hdl_build / nx_attempt_loop.nx

nx_attempt_loop.nx

buildroot/runtime/_hdl_build/nx_attempt_loop.nx

1819 B37 linesdepth 4pulls 6 transitivereach 0 importersview sourcekind tooltopic attempt
docsdependenciesstructsconstsfunctions

about

nx_attempt_loop.nx -- the WARDEN's team-attempt loop over the assignment queue (X-Q-003 rung 1; spec ADDENDUM Q3 "team-attempt loop"). NOTE the basename nx_work_dispatcher that nx_assign_next's header reserved for Q3 was already taken 2026-06-05 by the governor-era policy lib (imported by nx_assignments_run/nx_team_console), so Q3 ships under the spec's own words instead -- the older lib is untouched. One call = one beat: route the Conductor's pick. EXEC-recipe rows are attempted hands-off (durable lane build+run under a conf deadline, hang-proof via nx_guarded_run) and judged ONLY by nx_reconcile's evidence flip -- never by the recipe's exit code (the fake-green class dies here). Uncovered rows are RAISED (TODO->NOVEL = the tutor batch, "a raised-hand row instead of a silent stall") and the best covered row is attempted in the same beat, so a raise never wastes a beat. ASSIGNRESULT rows append to assign_next.log (one marching-order + outcomes stream). Policy lives in nx_wd_core.nx; this is the thin real-paths main (the pulse runs it arg-free; the gate drives the core on scratch paths). exit 0 = healthy beat (attempt GREEN, raise, or idle) exit 1 = attempt RED (row flipped RED; queue-health escalates) exit 101 = queue missing license_tier: ORIGINAL

dependencies 1 imports · 0 importers

nx_wd_core.nx nx_attempt_loop.nx

imports: nx_wd_core.nx

imported by: nobody (leaf or entry point)

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

main wd_conf_deadline sys_mmap sys_openat_rd sys_read sys_close wd_at wd_newwcx sys_mmap ↻ wd_beat 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 wd_w sys_write sys_openat_append an_pick an_deps_done an_deps_at ↻ sys_mmap ↻ an_find an_streq an_id_at ↻ wd_result wd_both wd_w ↻ wd_bothn wd_wn nxi_fd sys_mmap ↻ ccz_cat_num sys_write ↻

structs

none

consts

none

functions

25func main() -> i64