code wiki / _hdl_build / nx_vizsla_notes_gate.nx

nx_vizsla_notes_gate.nx

buildroot/runtime/_hdl_build/nx_vizsla_notes_gate.nx

18038 B390 linesdepth 2pulls 2 transitivereach 0 importersview sourcekind gate/prooftopic vizsla
docsdependenciesstructsconstsfunctions

about

nx_vizsla_notes_gate.nx -- VIZSLA V4b gate: the event-anchored timed meaningful-note engine, proven against a HAND-COMPUTED fixture (oracle = this header). No mocks: drives the real organ over real seg_store records. conf: window_days=3. today=2026-06-14. events: e1 2026-06-20 mom birthday; e2 2026-07-01 alex surgery; e3 2026-06-10 sam wedding; e4 2026-09-15 pat graduation. notes: n1 e1 BEFORE 7 card signature:img-mom -> release 06-13, deadline 06-20; SENT 06-14 -> SENT n2 e2 BEFORE 3 text voice:vm-alex -> release 06-28, deadline 07-01; today<release -> WAITING n3 e3 AFTER 2 card handwritten:scan-sam -> release 06-12, deadline 06-15; 06-12<=06-14<=06-15 -> DUE n4 e4 ON 0 call text:congrats-pat -> release 09-15, deadline 09-18; today<release -> WAITING n5 e3 BEFORE 7 card text:goodluck-sam -> release 06-03, deadline 06-10 (event); today>deadline -> LATE => notes=5 waiting=2 due=1 late=1 sent=1 ; due-only = {n3} DATA-DRIVEN: window_days=1 (only change) => n3 deadline 06-13, today 06-14 > -> LATE => notes=5 waiting=2 due=0 late=2 sent=1, same binary. Rows: 1 loud-fail-missing-conf schedule on absent conf => exit 1 2 load-events scanned=10 new=10 segment=seg-7001 3 idempotent-reload new=0 dup_instore=10 segment=none (law 10) 4 before-waiting n2 BEFORE release=2026-06-28 WAITING 5 after-due n3 AFTER release=2026-06-12 deadline=2026-06-15 DUE 6 before-late n5 BEFORE release=2026-06-03 deadline=2026-06-10 LATE 7 on-waiting n4 ON release=2026-09-15 WAITING 8 sent-closes n1 SENT 9 schedule-verdict notes=5 waiting=2 due=1 late=1 sent=1 10 due-filter due lists n3 + DUE-VERDICT due=1 + WAITING absent 11 release-date-inverse+personal n1 release=2026-06-13 + personal=signature:img-mom 12 data-driven-window window=1 => verdict due=0 late=2 (same binary) 13 loud-fail-unknown-event NOTE -> missing EVENT => schedule exit 1 14 schedule-determinism byte-identical twice Evidence: VIZSLA-NOTE-GATE -> stdout + knowledge/status/vizsla_gate.log; exit 0 iff 14/14. Tamper: pass a bogus instrument path as argv[1] => all rows FAIL => RED. spec: knowledge/specs/2026-06-14-thankyounotes-product-spec.md license_tier: ORIGINAL

dependencies 1 imports · 0 importers

nx_syscalls.nx nx_vizsla_notes_gate.nx

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

main rg_p sys_write rg_slen sys_openat_rd sys_close rg_run sys_fork sys_openat_wr sys_dup3 sys_mmap sys_execve sys_exit sys_wait4 sys_mmap ↻ rg_cat rg_catn sys_mmap ↻ sys_now_us sys_mmap ↻ sys_clock_gettime_mono rg_write sys_openat_wr ↻ sys_write ↻ rg_slen ↻ sys_close ↻ rg_row rg_p ↻ rg_has sys_mmap ↻ rg_readall sys_openat_rd ↻ sys_lseek sys_mmap ↻ sys_read sys_close ↻ rg_slen ↻ rg_fileeq sys_mmap ↻ rg_readall ↻

structs

none

consts

none

functions

38func rg_slen(s: *u8) -> i64
called by 3: rg_prg_writerg_has
44func rg_p(s: *u8) -> i64
called by 2: rg_rowmain calls 2: sys_writerg_slen
49func rg_cat(dst: *u8, off: i64, s: *u8) -> i64
called by 1: main
55func rg_catn(dst: *u8, off: i64, v: i64) -> i64
called by 1: main calls 1: sys_mmap
68func rg_write(path: *u8, content: *u8) -> i64
76func rg_readall(path: *u8, szout: *i64) -> *u8
93func rg_run(elf: *u8, a1: *u8, a2: *u8, a3: *u8, a4: *u8, outpath: *u8) -> i64
120func rg_has(path: *u8, needle: *u8) -> i64
called by 1: main calls 3: sys_mmaprg_readallrg_slen
139func rg_fileeq(p1: *u8, p2: *u8) -> i64
called by 1: main calls 2: sys_mmaprg_readall
154func rg_row(name: *u8, pass: i64) -> i64
called by 1: main calls 1: rg_p
161func main(argc: i64, argv: *i64) -> i64