code wiki / _hdl_build / nx_vizsla_jobs.nx

nx_vizsla_jobs.nx

buildroot/runtime/_hdl_build/nx_vizsla_jobs.nx

24120 B665 linesdepth 6pulls 7 transitivereach 0 importersview sourcekind tooltopic vizsla
docsdependenciesstructsconstsfunctions

about

nx_vizsla_jobs.nx -- NISHI VIZSLA V2a: the job-search engine (career domain). Fills career/AUTHOR (job-search-engine) + career/EDITOR (application-tracker) from the V0 gap profile. V2a = match scoring + tracker + cadence against a FIXTURE-ORACLE corpus; V2b (named follow-on, Market Researcher lane) = live posting census via own-TLS entity-gather feeding the same postings format. Commands (argv[1]): match <profile> <postings> [log] score every posting for every SEEK member: score = sum of that member's SKILL weights whose term appears in the posting's term list. Rank rows score-desc (file order breaks ties); zero-score postings are PRINTED not dropped (matched= counts score>0). track <appfile> <prefix> [segid] APP rows -> canonical records -> CID keys "app:nxc1-..." on seg_store = IDEMPOTENT additive application history (same law/substrate as V1). cadence <prefix> <profile> walk the app history chronologically; LAST status per posting wins; posting whose last status is not in the profile's CLOSED set gets a follow-up row. Closed apps are suppressed from cadence but stay in history (additive). File formats (line records, # comments; ALL model data in files, law 11/25): profile: SEEK <member> SKILL <member> <weight> <term> CLOSED <status> (statuses that need no follow-up) postings: POST <id> <pay_cents> <term> <term> ... apps: APP <date> <post-id> <member> <status> <note> Determinism: stdout has no clocks; epoch headers go to logs only (match log argv-overridable; track/cadence log derived from store prefix = fixture isolation). Loud-fail law: missing files, SKILL for unknown member, non-digit pay/weight = exit 1 named. EXCEED (V2a): ranking is the FAMILY'S fit function -- data-edited skill weights -- not an ad-funded board's pay-to-play order; cadence is the editor-fill that closes application loops. Reach EXCEED lands with V2b. spec: knowledge/specs/2026-06-10-nishi-vizsla-ladder.md license_tier: ORIGINAL

dependencies 3 imports · 0 importers

nx_syscalls.nx nx_canon_cid.nx nx_seg_store.nx nx_vizsla_jobs.nx

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

main vj_p sys_write vj_slen vj_eq vj_cmd_match vj_p ↻ sys_mmap ss_readall sys_openat_rd sys_lseek sys_mmap ↻ sys_read sys_close vj_tok vj_isws vj_eq ↻ vj_dup vj_slen ↻ sys_mmap ↻ vj_find vj_eq ↻ vj_digits vj_atoi vj_score vj_find ↻ vj_cat vj_catn sys_mmap ↻ sys_write ↻ vj_log sys_openat_append sys_mmap ↻ vj_cat ↻ vj_catn ↻ sys_now_realtime_sec sys_mmap ↻ sys_clock_gettime_real sys_write ↻ sys_close ↻

structs

none

consts

44const K_MAGIC_4096: i64 = 4096
45const K_MAGIC_131072: i64 = 131072
46const K_MAGIC_2048: i64 = 2048
47const K_MAGIC_65536: i64 = 65536

functions

49func vj_slen(s: *u8) -> i64
called by 3: vj_pvj_dupvj_kmemeq
55func vj_p(s: *u8) -> i64
60func vj_eq(a: *u8, b: *u8) -> i64
71func vj_dup(s: *u8) -> *u8
79func vj_atoi(s: *u8) -> i64
90func vj_digits(s: *u8) -> i64
called by 1: vj_cmd_match
102func vj_isws(c: i64) -> i64
called by 1: vj_tok
109func vj_tok(b: *u8, off: i64, lend: i64, dst: *u8, cap: i64) -> i64
131func vj_cat(dst: *u8, off: i64, s: *u8) -> i64
137func vj_catn(dst: *u8, off: i64, v: i64) -> i64
150func vj_find(list: *i64, n: i64, s: *u8) -> i64
159func vj_kmemeq(b: *u8, off: i64, n: i64, s: *u8) -> i64
called by 2: vj_fieldvj_isapp calls 1: vj_slen
169func vj_field(rec: *u8, rl: i64, want: *u8, out: *u8, cap: i64) -> i64
called by 1: vj_cmd_cadence calls 2: ss_r32vj_kmemeq
196func vj_isapp(b: *u8, koff: i64, kl: i64) -> i64
called by 1: vj_cmd_cadence calls 1: vj_kmemeq
201func vj_log(lpath: *u8, tag: *u8, rep: *u8, o: i64) -> i64
217func vj_prefixlog(prefix: *u8, out: *u8) -> i64
called by 2: vj_cmd_trackvj_cmd_cadence calls 1: vj_cat
227func vj_score(sk: *i64, mi: i64, terms: *i64, nterm: i64) -> i64
called by 1: vj_cmd_match calls 1: vj_find
243func vj_cmd_match(argc: i64, argv: *i64) -> i64
410func vj_cmd_track(argc: i64, argv: *i64) -> i64
535func vj_cmd_cadence(argc: i64, argv: *i64) -> i64
657func main(argc: i64, argv: *i64) -> i64