code wiki / _hdl_build / nx_vizsla_digest_gate.nx
nx_vizsla_digest_gate.nx
buildroot/runtime/_hdl_build/nx_vizsla_digest_gate.nx
about
nx_vizsla_digest_gate.nx -- VIZSLA V5 gate: the daily DIGEST composes the
blessed nx_vizsla_relate (brief) + nx_vizsla_notes (draftdue) over fixture
data and is proven to consolidate + aggregate them correctly. No mocks: it
loads real seg_store fixtures via the real organs and runs the real digest.
fixtures (today=2026-06-14):
relate: mom(inner,06-20) alex(close,03-15) sam(network,12-01) pat(close,-);
TOUCH mom 06-10, alex 02-01; OBLIG OWE alex book-loan, DUE pat loan-50;
THANKS mom 06-12, alex 05-01.
brief => followups=3 (alex DUE, sam/pat NEW), birthdays=1 (mom in 6d),
thankyous=2 (mom PENDING, alex OVERDUE), obligations=2.
notes: e1 mom birthday 06-20, e2 alex surgery 07-01, e3 sam wedding 06-10;
n1 birthday BEFORE 7, n2 surgery BEFORE 3, n3 wedding AFTER 2;
occasions: birthday win 7, wedding win 90 -> n1 DUE + n3 DUE => drafted=2.
=> VIZSLA-DIGEST-VERDICT followups=3 birthdays=1 thankyous=2 obligations=2 notes_drafted=2
Rows:
1 loud-fail-missing-conf digest on absent conf => exit 1
2 loud-fail-missing-key conf missing NOTES_PREFIX => exit 1
3 digest-relationships FOLLOWUP alex + BIRTHDAY mom present
4 digest-notes-drafts the wedding draft prose present
5 digest-verdict-aggregates consolidated verdict 3/1/2/2 + notes_drafted=2
6 digest-determinism byte-identical twice
Evidence: VIZSLA-DIGEST-GATE -> stdout + knowledge/status/vizsla_gate.log; exit 0 iff 6/6.
Tamper: bogus instrument argv[1] => all rows FAIL => RED.
spec: knowledge/specs/2026-06-10-nishi-vizsla-ladder.md license_tier: ORIGINAL
dependencies 1 imports · 0 importers
imports: nx_syscalls.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
| 29 | func rg_slen(s: *u8) -> i64 |
| 35 | func rg_p(s: *u8) -> i64 |
| 40 | func rg_cat(dst: *u8, off: i64, s: *u8) -> i64 called by 1: main |
| 46 | func rg_catn(dst: *u8, off: i64, v: i64) -> i64 |
| 59 | func rg_write(path: *u8, content: *u8) -> i64 |
| 67 | func rg_readall(path: *u8, szout: *i64) -> *u8 |
| 84 | func rg_run(elf: *u8, a1: *u8, a2: *u8, a3: *u8, a4: *u8, outpath: *u8) -> i64 |
| 111 | func rg_has(path: *u8, needle: *u8) -> i64 |
| 130 | func rg_fileeq(p1: *u8, p2: *u8) -> i64 |
| 145 | func rg_row(name: *u8, pass: i64) -> i64 |
| 152 | func main(argc: i64, argv: *i64) -> i64 |