code wiki / _hdl_build / nx_ecomat_target_emit.nx

nx_ecomat_target_emit.nx source

↩ module page · 34 lines · 1951 B

1// nx_ecomat_target_emit.nx -- R1, SOVEREIGN edition: the maturity GAP becomes ranked work for the 2// autonomous loop. Reads the NATIVE seg_store and appends one TODO target per below-bar domain to the 3// loop's assignment_queue.tsv via the shared et_emit_targets_core (DRY with the flywheel beat) -- 4// IDEMPOTENT + rt_lock-protected, weighted by leverage. license_tier: ORIGINAL 5import "nx_ecomat_lib.nx" 6import "nx_registry_lock.nx" 7 8func main(argc: i64, argv: *i64) -> i64 { 9 var store: *u8 = ECOMAT_STORE 10 var queue: *u8 = "knowledge/registry/assignment_queue.tsv" as *u8 11 var lock: *u8 = "knowledge/registry/assignment_queue.tsv.lock" as *u8 12 var tlog: *u8 = "knowledge/status/ecomat_targets.log" as *u8 13 if argc >= 2 { store = argv[1] as *u8 } 14 if argc >= 3 { queue = argv[2] as *u8 } 15 if argc >= 4 { lock = argv[3] as *u8 } 16 if argc >= 5 { tlog = argv[4] as *u8 } 17 let hcheck: *i64 = ss_open(store) 18 if (hcheck as i64) == 0 { _p("ECOMAT-EMIT verdict=RED reason=no-store (run nx_ecomat_seed)\n" as *u8); sys_exit(101); return 101 } 19 let szp: *i64 = sys_mmap(16) as *i64 20 let qb: *u8 = ss_readall(queue, szp) 21 var qn: i64 = szp[0] 22 if qn < 0 { qn = 0 } 23 let lk: i64 = rt_lock(lock) 24 let qf: i64 = sys_openat_append(queue, 0x1a4) 25 let lf: i64 = sys_openat_append(tlog, 0x1a4) 26 let out: *i64 = sys_mmap(32) 27 et_emit_targets_core(store, qb, qn, qf, lf, out) 28 if lf >= 0 { _fp(lf, "ECOMAT-EMIT-RUN emitted=" as *u8); _fn(lf, out[0]); _fp(lf, " done_marks=" as *u8); _fn(lf, out[1]); _fp(lf, " epoch=" as *u8); _fn(lf, sys_now_realtime_sec()); _fp(lf, " src=seg_store verdict=GREEN\n" as *u8); sys_close(lf) } 29 if qf >= 0 { sys_close(qf) } 30 rt_unlock(lock, lk) 31 _p("ECOMAT-EMIT emitted=" as *u8); _fn(1, out[0]); _p(" targets from the sovereign store (idempotent, lock-protected) done_marks=" as *u8); _fn(1, out[1]); _p(" verdict=GREEN\n" as *u8) 32 sys_exit(0) 33 return 0 34}