code wiki / _hdl_build / nx_team_train_gate.nx
nx_team_train_gate.nx source
↩ module page · 78 lines · 5754 B
1import "nx_gate_gn.nx"
2import "nx_gate_base.nx"
3// nx_team_train_gate.nx -- proves the CONSTANT team-training controller is real, grounded, and has teeth.
4// T1 GROUNDED : every method in the curriculum resolves to a REAL demonstrating organ (un-fakeable).
5// T2 ALL ROLES : engineer + doctor + adversarial + researcher each carry >=1 method; prints frontiers.
6// T3 NEXT-TO-TRAIN : the engineer has a fresh, not-yet-reproduced method queued (a real target to build).
7// T4 EXCEED : a measured positive margin over the reference = the team beats the tutor; 0-gain != exceed.
8// T5 NEG-CONTROL : a real organ -> present, a fake -> absent (the grounding has teeth).
9// T6 LIAR-KILL : repoint a method's organ at a fake -> that role's owned-count DROPS (status is real-data).
10// expect_exit: 0 license_tier: ORIGINAL
11import "nx_team_train.nx"
12import "nx_syscalls.nx"
13
14func grow(name: *u8, ok: i64) -> i64 { if ok==1 { gw(" PASS " as *u8) } else { gw(" FAIL " as *u8) } gw(name); gw("
15" as *u8); return ok }
16
17func main() -> i64 {
18 gw("=== nx_team_train_gate: is the team-training controller grounded + with teeth? ===\n" as *u8)
19 var pass: i64=0; var total: i64=0
20 let roles: *i64 = sys_mmap(8*64) as *i64; let methods: *i64 = sys_mmap(8*64) as *i64
21 let organs: *i64 = sys_mmap(8*64) as *i64; let fresh: *i64 = sys_mmap(8*64) as *i64; let repro: *i64 = sys_mmap(8*64) as *i64
22 let N: i64 = tt_load(roles, methods, organs, fresh, repro)
23 gw(" curriculum: \x00" as *u8); gn(N); gw(" methods across 4 roles, each tied to a real organ\n" as *u8)
24
25 // T1 GROUNDED -- every method has a real demonstrating organ
26 let grounded: i64 = tt_all_grounded(N, organs)
27 total=total+1; if grounded==1 { pass=pass+1; gw(" [PASS] " as *u8) } else { gw(" [FAIL] " as *u8) }
28 gw("T1 GROUNDED: all \x00" as *u8); gn(N); gw(" curriculum organs resolve to real files (un-fakeable)\n" as *u8)
29
30 // T2 ALL ROLES + frontiers (owned climbs as the team reproduces fresh methods)
31 var allroles: i64=1; var r: i64=0
32 while r<4 {
33 let tot: i64=tt_role_total(N, roles, r); let own: i64=tt_role_owned(N, roles, organs, fresh, repro, r)
34 let nx: i64=tt_next(N, roles, organs, fresh, repro, r)
35 gw(" \x00" as *u8); gw(tt_role_name(r)); gw(": owned \x00" as *u8); gn(own); gw("/\x00" as *u8); gn(tot); gw(" next-to-train=\x00" as *u8)
36 if nx>=0 { gw(methods[nx] as *u8) } else { gw("(fully trained)" as *u8) }
37 gw("\n" as *u8)
38 if tot<1 { allroles=0 }
39 r=r+1
40 }
41 total=total+1; if allroles==1 { pass=pass+1; gw(" [PASS] " as *u8) } else { gw(" [FAIL] " as *u8) }
42 gw("T2 ALL ROLES: engineer/doctor/adversarial/researcher each carry >=1 method\n" as *u8)
43
44 // T3 NEXT-TO-TRAIN for the engineer is a fresh, engineer-owned target (or, once all reproduced, none)
45 let en: i64 = tt_next(N, roles, organs, fresh, repro, TT_ENG)
46 let eng_owned: i64 = tt_role_owned(N, roles, organs, fresh, repro, TT_ENG)
47 let eng_tot: i64 = tt_role_total(N, roles, TT_ENG)
48 total=total+1
49 var t3: i64=0
50 if en>=0 { if roles[en]==TT_ENG { if fresh[en]==1 { t3=1 } } } // a real next target remains, OR
51 if en<0 { if eng_owned==eng_tot { t3=1 } } // the engineer is fully reproduced
52 if t3==1 { pass=pass+1; gw(" [PASS] " as *u8) } else { gw(" [FAIL] " as *u8) }
53 gw("T3 ENGINEER frontier \x00" as *u8); gn(eng_owned); gw("/\x00" as *u8); gn(eng_tot); gw(" -- next=\x00" as *u8); if en>=0 { gw(methods[en] as *u8) } else { gw("(all reproduced)" as *u8) }; gw("\n" as *u8)
54
55 // T4 EXCEED -- measured positive margin beats the reference; a zero-gain swap does NOT
56 let beats: i64 = tt_improved(0, 1)
57 let nogain: i64 = tt_improved(1, 1)
58 total=total+1; if beats==1 { if nogain==0 { pass=pass+1; gw(" [PASS] " as *u8) } else { gw(" [FAIL] " as *u8) } } else { gw(" [FAIL] " as *u8) }
59 gw("T4 EXCEED: team margin +1 over the reference -> beats(\x00" as *u8); gn(beats); gw("); a 0-gain swap is NOT an exceed(\x00" as *u8); gn(nogain); gw(")\n" as *u8)
60
61 // T5 NEG-CONTROL -- real organ present, fake absent
62 let realp: i64 = tt_organ_exists("nx_engineer_wire_sclass.nx\x00" as *u8)
63 let fakep: i64 = tt_organ_exists("nx_zzz_fake_nonexistent.nx\x00" as *u8)
64 total=total+1; if realp==1 { if fakep==0 { pass=pass+1; gw(" [PASS] " as *u8) } else { gw(" [FAIL] " as *u8) } } else { gw(" [FAIL] " as *u8) }
65 gw("T5 NEG-CONTROL: real organ present(\x00" as *u8); gn(realp); gw("), fake absent(\x00" as *u8); gn(fakep); gw(") = the grounding has teeth\n" as *u8)
66
67 // T6 LIAR-KILL -- repoint the doctor's first method organ at a fake -> doctor owned-count drops
68 let own_before: i64 = tt_role_owned(N, roles, organs, fresh, repro, TT_DOC)
69 var d: i64=0; var di: i64=0-1; while d<N { if roles[d]==TT_DOC { if fresh[d]==0 { di=d; d=N } } d=d+1 }
70 if di>=0 { organs[di]="nx_zzz_fake_nonexistent.nx\x00" as *u8 as i64 }
71 let own_after: i64 = tt_role_owned(N, roles, organs, fresh, repro, TT_DOC)
72 total=total+1; if own_after < own_before { pass=pass+1; gw(" [PASS] " as *u8) } else { gw(" [FAIL] " as *u8) }
73 gw("T6 LIAR-KILL: corrupt a doctor method's organ -> owned \x00" as *u8); gn(own_before); gw("->\x00" as *u8); gn(own_after); gw(" (status depends on real organs)\n" as *u8)
74
75 gw("\n=== nx_team_train_gate \x00" as *u8); gn(pass); gw("/\x00" as *u8); gn(total)
76 if pass==total { gw(" GREEN -- grounded per-role curriculum + a next-to-train target + a measured exceed detector + reproduction-tracking. Re-run after a reproduction lands and the role frontier CLIMBS.\n" as *u8); sys_exit(0); return 0 }
77 gw(" RED\n" as *u8); sys_exit(1); return 1
78}