code wiki / _hdl_build / nx_vizsla_log.nx
nx_vizsla_log.nx
buildroot/runtime/_hdl_build/nx_vizsla_log.nx
about
nx_vizsla_log.nx -- NISHI VIZSLA: TYPED INTERACTIONS + TIMELINE (PRM/CRM depth b,c). Operator 2026-06-23:
real-system depth. A real interaction is not one generic "touch" -- it has a TYPE (call/meeting/email/note/
text/coffee/intro/gift...) and CONTENT. This stores typed interactions as ADDITIVE CID records on the
sovereign seg_store plane and renders a full chronological per-contact TIMELINE (newest-first). Type is data
(any label). Foundation for typed-weighted health + reporting. Computed locally; tamper-evident; idempotent.
load <logfile> <prefix> [segid] INT <date> <contact> <type> <note...> -> "int:" records
timeline <prefix> <contact> that contact's interactions newest-first + first/last/count verdict
The note is the REST OF THE LINE (multi-word content preserved). Determinism: no clocks in stdout.
license_tier: ORIGINAL
dependencies 3 imports · 0 importers
imports: nx_syscalls.nxnx_canon_cid.nxnx_seg_store.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
| 13 | const K_MAGIC_1970: i64 = 1970 |
| 14 | const K_MAGIC_146097: i64 = 146097 |
| 15 | const K_MAGIC_719468: i64 = 719468 |
| 16 | const K_MAGIC_4096: i64 = 4096 |
| 17 | const K_MAGIC_1024: i64 = 1024 |
| 18 | const K_MAGIC_2048: i64 = 2048 |
| 19 | const K_MAGIC_131072: i64 = 131072 |
functions
| 21 | func vl_slen(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n } |
| 22 | func vl_p(s: *u8) -> i64 { sys_write(1, s, vl_slen(s)); return 0 } |
| 24 | func vl_eq(a: *u8, b: *u8) -> i64 |
| 31 | func vl_dup(s: *u8) -> *u8 |
| 39 | func vl_atoi(s: *u8) -> i64 called by 1: vl_cmd_load |
| 46 | func vl_isws(c: i64) -> i64 { if c == 32 { return 1 } if c == 13 { return 1 } if c == 9 { return 1 } return 0 } |
| 48 | func vl_tok(b: *u8, off: i64, lend: i64, dst: *u8, cap: i64) -> i64 |
| 64 | func vl_restline(b: *u8, p: i64, e: i64, dst: *u8, cap: i64) -> i64 |
| 74 | func vl_cat(dst: *u8, off: i64, s: *u8) -> i64 |
| 80 | func vl_catn(dst: *u8, off: i64, v: i64) -> i64 |
| 93 | func vl_kmemeq(b: *u8, off: i64, n: i64, s: *u8) -> i64 |
| 100 | func vl_iskind(b: *u8, koff: i64, kl: i64, pfx: *u8) -> i64 |
| 106 | func vl_field(rec: *u8, rl: i64, want: *u8, out: *u8, cap: i64) -> i64 |
| 130 | func vl_datedays(s: *u8) -> i64 |
| 165 | func vl_put(keys: *i64, vals: *i64, nf: i64, kp: *u8, st: *i64) -> i64 |
| 188 | func vl_cmd_load(argc: i64, argv: *i64) -> i64 |
| 252 | func vl_cmd_timeline(argc: i64, argv: *i64) -> i64 |
| 340 | func main(argc: i64, argv: *i64) -> i64 |