code wiki / _hdl_build / nx_train_triage_sweep.nx

nx_train_triage_sweep.nx

buildroot/runtime/_hdl_build/nx_train_triage_sweep.nx

6018 B136 linesdepth 3pulls 3 transitivereach 0 importersview sourcekind tooltopic train
docsdependenciesstructsconstsfunctions

about

nx_train_triage_sweep.nx -- the CONDUCTOR's pulse step that closes the triage wiring callout: every training report on file is diagnosed EVERY BEAT, and a verdict CHANGE auto-files a PM-ESCALATION row (the sentinel pattern) so a sick training lane becomes backlog work without Claude in the loop. Idempotent by construction (law 10): the PM row is filed ONLY when the verdict differs from the LAST swept verdict for that report (read back from the triage log). Conf-driven (law 11): knowledge/status/train_reports.conf rows "R <path>" -- adding a training lane = adding a row, never code. Recovery to CONVERGED-HEALTHY logs but does not escalate. BROKEN-REPORT escalates AND exits nonzero (the emitting lane itself is the defect -> pulse ATTENTION). argv overrides (conf, triage-log, pm-log) = the Engineer's gate lane. license_tier: ORIGINAL

dependencies 1 imports · 0 importers

nx_train_triage.nx nx_train_triage_sweep.nx

imports: nx_train_triage.nx

imported by: nobody (leaf or entry point)

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

main tt_w sys_write tt_match tt_diagnose 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 ↻ tt_read sys_mmap ↻ sys_read_file sys_openat_rd sys_lseek sys_mmap ↻ sys_read sys_munmap sys_close tt_match ↻ tt_keynum tt_match ↻ tt_name tsw_prev_verdict tsw_cat tt_match ↻ tsw_streq tt_wn sys_mmap ↻ sys_write ↻

structs

none

consts

none

functions

13func tsw_cat(dst: *u8, off: i64, s: *u8) -> i64 { var i: i64 = 0; while s[i] != (0 as u8) { dst[off+i] = s[i]; i = i + 1 } dst[off+i] = 0 as u8; return off + i }
called by 1: tsw_prev_verdict
17func tsw_prev_verdict(tlog: *u8, rpath: *u8, out: *u8) -> i64
called by 1: main calls 2: tsw_cattt_match
52func tsw_streq(a: *u8, b: *u8) -> i64
called by 1: main
62func main(argc: i64, argv: *i64) -> i64