code wiki / _hdl_build / nx_team_scorecard_test.nx

nx_team_scorecard_test.nx source

↩ module page · 75 lines · 5221 B

1// nx_team_scorecard_test.nx -- grade the 12 TEAMMATES (organs), run the growth loop, and prove it: 2// the loop deterministically picks the weakest x highest-leverage organ as the next build, the team 3// improves with NO REGRESSION, and converges to all-pass (beating the bar). A simulated regression is 4// caught. This is the loop Claude is tied into. Exit 0 if all hold. license_tier: ORIGINAL 5 6import "nx_team_scorecard.nx" 7import "nx_syscalls.nx" 8 9func tt_puts(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(1, s, n); return 0 } 10func tt_num(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;k=1}; while m>0 {t[k]=48+(m%10); 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 } 11 12func main() -> i64 { 13 tt_puts("=== TEAMMATE GROWTH LOOP: grade organs, no regression, build weakest first ===\n" as *u8) 14 let N: i64 = 12 15 // dims per teammate: proven, autonomy(M0-4), breadth(0-5), robustness(0-5) 16 let pr: *i64 = sys_mmap(8*16) as *i64; let au: *i64 = sys_mmap(8*16) as *i64; let br: *i64 = sys_mmap(8*16) as *i64; let ro: *i64 = sys_mmap(8*16) as *i64; let lev: *i64 = sys_mmap(8*16) as *i64 17 // 0 Engineer 1 Doctor 2 Builder 3 Conductor 4 Council 5 Warden 6 Scribe 7 Librarian 8 Researcher 9 Critic 10 Genealogist 11 Caretaker 18 pr[0]=1;au[0]=3;br[0]=4;ro[0]=4;lev[0]=5 19 pr[1]=1;au[1]=3;br[1]=3;ro[1]=3;lev[1]=4 20 pr[2]=1;au[2]=3;br[2]=3;ro[2]=3;lev[2]=5 21 pr[3]=1;au[3]=3;br[3]=3;ro[3]=3;lev[3]=4 22 pr[4]=1;au[4]=2;br[4]=3;ro[4]=3;lev[4]=3 23 pr[5]=1;au[5]=2;br[5]=2;ro[5]=3;lev[5]=3 24 pr[6]=1;au[6]=2;br[6]=2;ro[6]=2;lev[6]=2 // Scribe 56 25 pr[7]=1;au[7]=3;br[7]=3;ro[7]=3;lev[7]=4 26 pr[8]=1;au[8]=2;br[8]=3;ro[8]=2;lev[8]=5 27 pr[9]=1;au[9]=2;br[9]=2;ro[9]=2;lev[9]=4 // Critic 56 28 pr[10]=1;au[10]=1;br[10]=2;ro[10]=2;lev[10]=3 // Genealogist 46 29 pr[11]=1;au[11]=1;br[11]=2;ro[11]=2;lev[11]=3 // Caretaker 46 30 31 let sc: *i64 = sys_mmap(8*16) as *i64 32 var i: i64 = 0 33 while i < N { sc[i] = tsc_score(pr[i],au[i],br[i],ro[i]); i = i + 1 } 34 tt_puts(" scores:" as *u8); i = 0; while i < N { tt_puts(" " as *u8); tt_num(sc[i]); i = i + 1 } tt_puts("\n" as *u8) 35 let target1: i64 = tsc_growth_target(N, sc, lev, TSC_BENCHMARK) 36 tt_puts(" all-pass=" as *u8); tt_num(tsc_all_pass(N,sc,TSC_BENCHMARK)); tt_puts(" total-gap=" as *u8); tt_num(tsc_total_gap(N,sc,TSC_BENCHMARK)); tt_puts(" -> next growth target = teammate #" as *u8); tt_num(target1); tt_puts(" (weakest x leverage)\n" as *u8) 37 38 // Claude builds the target up (autonomy/breadth/robustness +1 each); re-grade 39 let prev: *i64 = sys_mmap(8*16) as *i64 40 i = 0; while i < N { prev[i] = sc[i]; i = i + 1 } 41 au[target1]=au[target1]+1; br[target1]=br[target1]+1; ro[target1]=ro[target1]+1 42 sc[target1] = tsc_score(pr[target1],au[target1],br[target1],ro[target1]) 43 tt_puts(" built #" as *u8); tt_num(target1); tt_puts(": " as *u8); tt_num(prev[target1]); tt_puts(" -> " as *u8); tt_num(sc[target1]); tt_puts(" regression anywhere=" as *u8); tt_num(tsc_any_regression(N, prev, sc)); tt_puts("\n" as *u8) 44 45 // simulate a BAD build that regresses another organ -> the guard must catch it 46 let bad: *i64 = sys_mmap(8*16) as *i64 47 i = 0; while i < N { bad[i] = sc[i]; i = i + 1 } 48 bad[0] = bad[0] - 5 49 let caught: i64 = tsc_any_regression(N, sc, bad) 50 51 // keep building below-benchmark organs up until all pass (the loop converges) 52 var rounds: i64 = 0 53 var t: i64 = tsc_growth_target(N, sc, lev, TSC_BENCHMARK) 54 while t >= 0 { 55 au[t]=au[t]+1; br[t]=br[t]+1; ro[t]=ro[t]+1 56 sc[t] = tsc_score(pr[t],au[t],br[t],ro[t]) 57 if sc[t] > 100 { sc[t] = 100 } 58 rounds = rounds + 1 59 t = tsc_growth_target(N, sc, lev, TSC_BENCHMARK) 60 if rounds > 40 { t = 0 - 1 } 61 } 62 tt_puts(" loop converged in " as *u8); tt_num(rounds); tt_puts(" build-rounds -> all-pass=" as *u8); tt_num(tsc_all_pass(N,sc,TSC_BENCHMARK)); tt_puts(" total-gap=" as *u8); tt_num(tsc_total_gap(N,sc,TSC_BENCHMARK)); tt_puts("\n" as *u8) 63 64 let r: *i64 = sys_mmap(8*8) as *i64 65 r[0] = 0; if tsc_score(1,3,4,4) == 82 { if tsc_score(1,1,2,2) == 46 { r[0] = 1 } } // grading correct 66 r[1] = 0; if target1 == 10 { r[1] = 1 } // weakest x leverage (Genealogist) 67 r[2] = 0; if tsc_any_regression(N, prev, sc) == 0 { r[2] = 1 } // a real build -> no regression 68 r[3] = 0; if caught == 1 { r[3] = 1 } // the guard catches a bad build 69 r[4] = 0; if tsc_all_pass(N, sc, TSC_BENCHMARK) == 1 { r[4] = 1 } // loop converges (beats the bar) 70 var pass: i64 = 0; var j: i64 = 0 71 while j < 5 { pass = pass + r[j]; j = j + 1 } 72 tt_puts("----\n passed " as *u8); tt_num(pass); tt_puts("/5\n" as *u8) 73 if pass == 5 { tt_puts(" GROWTH LOOP LIVE: Claude is tied in -- grade teammates, build the weakest x leverage, no regression, until all beat the bar.\n" as *u8); sys_exit(0); return 0 } 74 tt_puts(" FAIL\n" as *u8); sys_exit(1); return 1 75}