code wiki / _hdl_build / nx_raci_audit.nx
nx_raci_audit.nx
buildroot/runtime/_hdl_build/nx_raci_audit.nx
about
nx_raci_audit.nx -- FULL TEAM RACI AUDIT (operator: "did you make sure all the raci makes sense and
is correctly partitioned?"). Not a claim -- a checkable partition. Every team ROLE is bound to ONE
distinct VERB (the work it owns); the audit proves no two roles share a verb (clean partition), the
known conflations are caught, every role is present, and the build pipeline keeps separation of
duties. Composes nx_role_audit (ra_distinct / ra_conflation / ra_roster_clean) + nx_build_raci
(br_separation_ok / br_roles_correct). LAWS: struct-free, integer-only. license_tier: ORIGINAL
dependencies 3 imports · 1 importers
imports: nx_role_audit.nxnx_build_raci.nxnx_syscalls.nx
imported by: nx_raci_audit_test.nx
structs
| none |
consts
| 12 | const RA_N_ROLES: i64 = 10 |
| 13 | const V_AUTHOR: i64 = 1 // BUILDER -- writes the module |
| 14 | const V_TEST: i64 = 2 // ENGINEER -- verifies/tests it (the gate) (NOT the Doctor) |
| 15 | const V_HEAL: i64 = 3 // DOCTOR -- fixes it when the test fails (NOT the Engineer) |
| 16 | const V_RESEARCH: i64 = 4 // RESEARCHER-- gathers + corroborates evidence |
| 17 | const V_SCORE: i64 = 5 // REFEREE -- objective scoring, no self-grade |
| 18 | const V_PLAN: i64 = 6 // PM -- turns research into ranked assignments |
| 19 | const V_ADMIT: i64 = 7 // COUNCIL -- the single Accountable; admits the proven cap |
| 20 | const V_REGISTER: i64 = 8 // LIBRARIAN -- writes the registry entry |
| 21 | const V_DOCUMENT: i64 = 9 // SCRIBE -- documents (catalog row) |
| 22 | const V_GOVERN: i64 = 10 // WARDEN -- orchestrates / paces (governor, loop, polite-crawl) |
functions
| 25 | func raa_verbs(out: *i64) -> i64 called by 1: main |
| 33 | func raa_conflating_pairs(verbs: *i64, n: i64) -> i64 |
| 48 | func raa_all_present(present_flags: *i64, n: i64) -> i64 |
| 56 | func raa_partition_clean(verbs: *i64, present: *i64, n: i64) -> i64 called by 2: raa_reportmain calls 4: raa_conflating_pairsraa_all_presentbr_separation_okbr_roles_correct |
| 65 | func raa_w(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(1,s,n); return 0 } |
| 66 | func raa_wn(v: i64) -> i64 { let bb: *u8=sys_mmap(28); var m: i64=v; if m<0{m=0-m} let t: *u8=sys_mmap(28); var k: i64=0; if m==0{t[0]=48 as u8;k=1} while m>0{t[k]=(48+(m%10)) as u8;m=m/10;k=k+1} var i: i64=0; while i<k{bb[i]=t[k-1-i];i=i+1} sys_write(1,bb,k); return 0 } |
| 68 | func raa_role_name(i: i64) -> *u8 called by 1: raa_report |
| 82 | func raa_report(verbs: *i64, present: *i64, n: i64) -> i64 called by 1: main calls 6: raa_wraa_role_nameraa_wnraa_conflating_pairsraa_all_presentraa_partition_clean |