code wiki / _hdl_build / nx_markets_member.nx

nx_markets_member.nx

buildroot/runtime/_hdl_build/nx_markets_member.nx

5891 B94 linesdepth 4pulls 5 transitivereach 0 importersview sourcekind tool
docsdependenciesstructsconstsfunctions

about

nx_markets_member.nx -- wire the MARKETS-INVESTING finance capabilities into the RACI + TEAM, SOVEREIGNLY (operator 2026-06-24: "make sure these things are wired into the raci and team"; "get us off tsv"). Mirrors nx_raci_bind's sovereign pattern: registers each capability as a row in the nx_role_store seg-store channel "finmkt" (NO TSV) -- id<TAB>label<TAB>activity<TAB>role<TAB>ownership -- where `activity` is the team's RACI work-type (research/build/verify/coordinate) and `role` is the role the RACI contract makes ACCOUNTABLE for that activity. GROUNDED, not asserted: it migrates the RACI contract into the sovereign store (raci_migrate) and VERIFIES each named role is really Accountable (raci_is_accountable) before trusting the binding -- a capability bound to a non-accountable role is flagged. IDEMPOTENT (skips an already-registered id). This is how the markets-investing arc stops being an orphan: the team roster + the RACI both know who owns it. Personal finance is already a member via nx_fin_member; this is its markets-investing sibling. license_tier: ORIGINAL

dependencies 3 imports · 0 importers

nx_role_store.nx nx_raci_sov.nx nx_syscalls.nx nx_markets_member.nx

imports: nx_role_store.nxnx_raci_sov.nxnx_syscalls.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main m_puts sys_write sys_mmap raci_migrate sys_mmap ↻ ss_readall sys_openat_rd sys_lseek sys_mmap ↻ sys_read sys_close ss_begin ss_begin_cap sys_mmap ↻ rsv_key ss_add ss_add2 ss_w32 ss_len ss_commit ss_segid_ok sys_mmap ↻ ss_cat ss_catn sys_mmap ↻ sys_write ↻ ss_write_seg ss_segid_ok ↻ sys_mmap ↻ ss_cat ↻ ss_catn ↻ sys_write ↻ ss_segname ss_cat ↻ ss_catn ↻ ss_writefile sys_openat_wr sys_write ↻ sys_close ↻

structs

none

consts

15const MM_CH: *u8 = "finmkt"

functions

17func m_puts(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(1, s, n); return 0 }
called by 2: mm_registermain calls 1: sys_write
18func m_putn(v: i64) -> i64
called by 1: main calls 2: sys_writesys_mmap
27func mm_cat(dst: *u8, off: i64, s: *u8) -> i64 { var o: i64 = off; var i: i64 = 0; while s[i] != (0 as u8) { dst[o] = s[i]; o = o + 1; i = i + 1 } return o }
called by 1: mm_register
28func mm_streq(a: *u8, b: *u8) -> i64 { var i: i64 = 0; while a[i] != (0 as u8) { if a[i] != b[i] { return 0 } i = i + 1 } if b[i] != (0 as u8) { return 0 } return 1 }
called by 1: mm_has
31func mm_has(id: *u8) -> i64
48func mm_register(id: *u8, label: *u8, activity: *u8, role: *u8) -> i64
64func main() -> i64