code wiki / _hdl_build / nx_vizsla_action.nx

nx_vizsla_action.nx

buildroot/runtime/_hdl_build/nx_vizsla_action.nx

8608 B196 linesdepth 2pulls 2 transitivereach 0 importersview sourcekind orphan librarytopic vizsla
docsdependenciesstructsconstsfunctions

about

nx_vizsla_action.nx -- NISHI VIZSLA: the controller that turns a FIRST-PARTY browser form POST into a relationship mutation. Operator 2026-06-22: "s class exceed not just dropping files ... our first party nishi browser ... manage and keep and use the data in a privacy first respectful way." The Vizsla page (nx_vizsla_render) carries 0-JS native HTML <form method=post> elements; a sovereign POST endpoint hands the URL-encoded body to THIS organ, which decodes it and dispatches to the gated tenant engine -- so you add a contact / log a touch FROM the first-party page, no file editing, data never leaving the box. submit <base> <tid> <action> <urlencoded-body> action = add-contact | touch add-contact body: id=&name=&tier=&bday= (name spaces -> single token; id derived from name if blank) touch body: date=&id=&note= (note spaces -> single token) Sovereign: own urldecode (%XX + '+'), composes _offc/nx_vizsla_tenant.elf (re-implements nothing). The daemon accept-loop that calls this on a POST is the next thin transport rung. license_tier: ORIGINAL

dependencies 1 imports · 0 importers

nx_syscalls.nx nx_vizsla_action.nx

imports: nx_syscalls.nx

imported by: nobody (leaf or entry point)

structs

none

consts

none

functions

14func va_slen(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n }
15func va_p(s: *u8) -> i64 { sys_write(1, s, va_slen(s)); return 0 }
17func va_eq(a: *u8, b: *u8) -> i64
25func va_hex(c: i64) -> i64
33func va_urldecode(src: *u8, n: i64, out: *u8, cap: i64) -> i64
58func va_keymatch(body: *u8, bn: i64, i: i64, key: *u8, kl: i64) -> i64
67func va_getfield(body: *u8, bn: i64, key: *u8, out: *u8, cap: i64) -> i64
90func va_san(src: *u8, out: *u8, lower: i64) -> i64
115func va_run_tenant(a1: *u8, a2: *u8, a3: *u8, a4: *u8, a5: *u8, a6: *u8, a7: *u8) -> i64
139func va_cmd_submit(argc: i64, argv: *i64) -> i64
190func main(argc: i64, argv: *i64) -> i64