code wiki / (root) / nx_final_quality_test.nx

nx_final_quality_test.nx source

↩ module page · 56 lines · 2273 B

1import "nx_syscalls.nx" 2import "nx_final_quality.nx" 3 4func main() -> i64 { 5 let result: *i64 = (sys_mmap(NX_FINAL_RES_FIELDS * 8 + 16)) as *i64 6 7 // T1: S_CLASS across all axes. 8 nx_final_quality(900, 870, 880, 920, 850, 890, 950, result) 9 let v1: i64 = result[NX_FINAL_RES_VERDICT] 10 let c1: i64 = result[NX_FINAL_RES_COMPOSITE] 11 // sum = 900*20 + 870*15 + 880*15 + 920*15 + 850*10 + 890*15 + 950*10 = 88150 12 // wsum = 100. composite = 881. S_CLASS. 13 if v1 != NX_FINAL_S_CLASS { return 1 } 14 if c1 < 870 { return 2 } 15 if c1 > 895 { return 3 } 16 17 // T2: SHIPPABLE — composite 650. 18 nx_final_quality(700, 650, 600, 680, 600, 650, 700, result) 19 let v2: i64 = result[NX_FINAL_RES_VERDICT] 20 if v2 != NX_FINAL_SHIPPABLE { return 10 } 21 22 // T3: PARTIAL — composite 500. 23 nx_final_quality(500, 500, 500, 500, 500, 500, 500, result) 24 let v3: i64 = result[NX_FINAL_RES_VERDICT] 25 if v3 != NX_FINAL_PARTIAL { return 20 } 26 27 // T4: FAILED — composite below 410. 28 nx_final_quality(300, 300, 300, 300, 300, 300, 300, result) 29 let v4: i64 = result[NX_FINAL_RES_VERDICT] 30 if v4 != NX_FINAL_FAILED { return 30 } 31 32 // T5: Topology hard-downgrade. High composite but body topology severe. 33 nx_final_quality(900, 900, 900, 900, 900, 900, 100, result) 34 let v5: i64 = result[NX_FINAL_RES_VERDICT] 35 // composite without topology = 900. With topology 100*10=1000 contribution out of 36 // 900*90 + 100*10 = 81000+1000 / 100 = 820. That would be S_CLASS. 37 // But hard-downgrade triggers because topology_q10 (100) < 256. 38 // S_CLASS -> PARTIAL (single downgrade step from chain). 39 if v5 == NX_FINAL_S_CLASS { return 40 } 40 41 // T6: Skip vulva (-1) — caller indicates not visible. Still works. 42 nx_final_quality(800, 800, 800, -1, 800, 800, 900, result) 43 let v6: i64 = result[NX_FINAL_RES_VERDICT] 44 if v6 < NX_FINAL_SHIPPABLE { return 50 } 45 46 // T7: Failing axis selection. 47 nx_final_quality(800, 800, 200, 800, 800, 800, 800, result) 48 let f7: i64 = result[NX_FINAL_RES_FAIL_AXIS] 49 if f7 != NX_FINAL_AXIS_EROTICISM { return 60 } 50 51 // T8: All axes -1 → error return. 52 let rc: i64 = nx_final_quality(-1, -1, -1, -1, -1, -1, -1, result) 53 if rc == 0 { return 70 } 54 55 return 0 56}