code wiki / _hdl_build / _attempt_loop_gate_authored.nx
_attempt_loop_gate_authored.nx
buildroot/runtime/_hdl_build/_attempt_loop_gate_authored.nx
about
_attempt_loop_gate_authored.nx -- gate for the Warden attempt loop
(X-Q-003 rung 1 + the X-Q-006 SPEC build route). Drives wd_beat on a
SCRATCH queue through the REAL sovereign lane, the REAL nx_reconcile elf
and the REAL nx_auto_builder elf -- no mocks. Six beats:
beat1: pick NOEXEC1 (w9, no recipe) -> RAISED to NOVEL, and the best
covered row REDR1 (w8, recipe exits 7, no marker) is attempted in
the SAME beat -> RED (raise never wastes a beat; fail-loud).
beat2: LIAR1 (w7, recipe exits 0 but marker says RED) -> RED. THE
anti-fake-green proof: exit codes never decide, evidence does.
beat3: GREEN1 (w6, recipe appends its green marker) -> nx_reconcile
flips it DONE on evidence -> GREEN.
beat4: SPEC1 (w5, ||SPEC= build spec) -> auto-builder classifier-routes
the shape, AUTHORS _pe_alspec1 + KAT, AUTOBUILD GREEN evidence,
reconcile flips DONE: a queue row BUILT a new module hands-off.
beat5: BADSPEC1 (w4, malformed spec) -> auto-builder REFUSES (exit 2),
marker never green -> RED (bad specs die loud).
beat6: nothing runnable -> IDLE row.
Staleness killer: seed verdict=STALE lines for the green/liar anchors so a
previous run's marker lines can never pre-flip a row (last-line-wins).
Plus conf KATs (parse + default-on-absent).
Markers: ALG-* checks; final ALGATE row -> knowledge/status/attempt_loop.log
license_tier: ORIGINAL
dependencies 1 imports · 0 importers
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
structs
| none |
consts
| none |
functions
| 26 | func alg_p(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(1,s,n); return 0 } |
| 27 | func alg_f(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 } |
| 29 | func alg_chk(label: *u8, ok: i64, bad: *i64) -> i64 |
| 36 | func alg_seed_queue(qp: *u8) -> i64 |
| 54 | func alg_seed_stale() -> i64 |
| 82 | func alg_seed_xq006_queue(qp: *u8) -> i64 |
| 95 | func alg_status_of(qp: *u8, id: *u8) -> i64 |
| 106 | func alg_count(path: *u8, pat: *u8) -> i64 |
| 127 | func alg_beats_a(wcx: *i64, qp: *u8, badv: *i64) -> i64 |
| 158 | func alg_beats_b(wcx: *i64, qp: *u8, badv: *i64) -> i64 |
| 187 | func alg_shape_of(name: *u8) -> i64 |
| 237 | func alg_beats_c(wcx: *i64, qp6: *u8, badv6: *i64) -> i64 |
| 275 | func main() -> i64 |