code wiki / _hdl_build / nx_vizsla_group_gate.nx

nx_vizsla_group_gate.nx

buildroot/runtime/_hdl_build/nx_vizsla_group_gate.nx

15608 B352 linesdepth 2pulls 2 transitivereach 0 importersview sourcekind gate/prooftopic vizsla
docsdependenciesstructsconstsfunctions

about

nx_vizsla_group_gate.nx -- VIZSLA GROUP gate: multi-member find-a-time + slot poll proven against HAND-COMPUTED intersection fixtures. GENUINE COMPOSITION: member calendars are loaded through the real nx_vizsla_calendar organ (cal: + rec: records), then nx_vizsla_group reads those member stores -- nothing is mocked. member calendars (2026-07-10): alice: 09:00-10:00 planning, 13:00-14:00 lunch bob: 10:00-12:00 work, RRULE gym DAILY x2 15:00-16:00 (07-10 + 07-11) group busy union 07-10: [540,720) [780,840) [900,960) free in [480,1320): [480,540) [720,780) [840,900) [960,1320) findtime dur=60 07-10 -> 4 candidates (08:00,12:00,14:00,16:00 windows) findtime dur=90 07-10..07-11 -> 3 (evening 07-10 + two 07-11 windows; short gaps drop) 07-11 dur=60 -> free ends 15:00 where bob's RECURRING gym starts poll p1: s1 2026-07-10 16:00+90, s2 2026-07-11 08:00+90 initial votes: all 4 yes -> tie 2-2 -> winner=s1 (lexicographic tie-break) bob changes s1 to no LATER (2026-07-09) -> s1 1-1, s2 2 -> winner=s2 (latest-wins) Rows: 1 fixture-cal-loads alice+bob calendars load via the real organ (new=2 each) 2 group-load 9 records (3 MEMBER + 2 SLOT + 4 VOTE) new=9 seg-6303 3 idempotent-reload new=0 dup_instore=9 (law 10) 4 findtime-members g1 has members=2 (carol is g2 -- roster isolation) candidates=4 5 findtime-morning-slot 08:00-09:00 fits=1 6 findtime-gap-slot 12:00-13:00 fits=1 (between-meetings gap found) 7 findtime-evening-slot 16:00-22:00 fits=6 8 findtime-dur90 2 days dur=90 -> candidates=3 (short windows honestly dropped) 9 recurring-blocks 07-11 free window ENDS 15:00 at bob's recurring gym 10 tally-tie-lexicographic winner=s1 yes=2 on the 2-2 tie 11 tally-latest-wins after bob's later no: s1 yes=1 no=1, winner=s2 yes=2 12 findtime-determinism byte-identical twice 13 loud-fail-unknown-gid findtime ghost -> exit 1 [negative control] 14 loud-fail-bad-date findtime from=2026-13-99 -> exit 1 [negative control] 15 loud-fail-bad-vote VOTE maybe -> load exit 1 [negative control] Evidence: VIZSLA-GRP-GATE -> stdout + knowledge/status/vizsla_gate.log; exit 0 iff 15/15. spec: knowledge/research/2026-06-22-vizsla-sclass-roadmap.md license_tier: ORIGINAL

dependencies 1 imports · 0 importers

nx_syscalls.nx nx_vizsla_group_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 gg_p sys_write gg_slen gg_ensure sys_openat_rd sys_close gg_p ↻ gg_runv sys_fork sys_openat_wr sys_dup3 sys_mmap sys_execve sys_exit sys_wait4 gg_args sys_mmap ↻ sys_now_us sys_mmap ↻ sys_clock_gettime_mono gg_mkpfx sys_mmap ↻ gg_cat gg_catn sys_mmap ↻ gg_write sys_openat_wr ↻ sys_write ↻ gg_slen ↻ sys_close ↻ gg_runv ↻ gg_args ↻ gg_has sys_mmap ↻ gg_readall sys_openat_rd ↻ sys_lseek sys_mmap ↻ sys_read

structs

none

consts

none

functions

38func gg_slen(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n }
called by 3: gg_pgg_writegg_has
39func gg_p(s: *u8) -> i64 { sys_write(1, s, gg_slen(s)); return 0 }
41func gg_cat(dst: *u8, off: i64, s: *u8) -> i64
called by 2: gg_mkpfxmain
47func gg_catn(dst: *u8, off: i64, v: i64) -> i64
called by 2: gg_mkpfxmain calls 1: sys_mmap
60func gg_write(path: *u8, content: *u8) -> i64
68func gg_readall(path: *u8, szout: *i64) -> *u8
85func gg_runv(elf: *u8, args: *i64, outpath: *u8) -> i64
115func gg_has(path: *u8, needle: *u8) -> i64
called by 1: main calls 3: sys_mmapgg_readallgg_slen
134func gg_fileeq(p1: *u8, p2: *u8) -> i64
called by 1: main calls 2: sys_mmapgg_readall
149func gg_row(name: *u8, pass: i64) -> i64
called by 1: main calls 1: gg_p
156func gg_args(a1: *u8, a2: *u8, a3: *u8, a4: *u8, a5: *u8, a6: *u8, a7: *u8, a8: *u8) -> *i64
called by 2: gg_ensuremain calls 1: sys_mmap
170func gg_ensure(elf: *u8, organ: *u8) -> i64
178func gg_mkpfx(tag: *u8, us: i64) -> *u8
called by 1: main calls 3: sys_mmapgg_catgg_catn
188func main(argc: i64, argv: *i64) -> i64