code wiki / (root) / nx_nofloat_propose_chat_gate.nx

nx_nofloat_propose_chat_gate.nx

buildroot/runtime/nx_nofloat_propose_chat_gate.nx

10650 B205 linesdepth 11pulls 29 transitivereach 0 importersview sourcekind gate/prooftopic nofloat
docsdependenciesstructsconstsfunctions

about

nx_nofloat_propose_chat_gate.nx -- PROPOSE->VERIFY rung 3 (2026-07-15): a BETTER PROPOSER on the SAME RULER. The raw 3-shot completion proposer measured solve-rate 1/10 on the 10-question inversion ruler (nx_nofloat_propose_solve_gate -- the model pattern-copies instead of inverting). This gate asks the SAME 10 questions through the serve's CHATML path (gp[12]=1: <|im_start|>user ... <|im_start|>assistant -- the instruct-tuned surface, natural-language question + answer-format instruction) and measures whether the prompting MODE alone moves the solve-rate. Same kernel, same questions, same teeth => the delta is the prompting mode's, honestly. Teeth stay model-IQ-independent (the RATE is data, not a tooth): T1 mechanism live: >=8/10 proposals parse as integers; zero generation or kernel failures T2 soundness cross-check: kernel verdict on the instantiation == independent in-gate arithmetic (0 violations) T3 NEG-CONTROL: all 10 wrong-by-one instantiations (in-grammar: x+1, stepping to x-1 at the operand caps) REFUTED T4 NEG-CONTROL: the LIVE unsolvable chat question ('2 times what number equals 9?') can NEVER certify T5 determinism: re-running Q1 reproduces BYTE-IDENTICAL text (greedy no-float exceed, chat path included) INSTRUMENT v2 (2026-07-15, after the 1.5B first-light): max_new 8->24 (EOS-complete -- chattier models were TRUNCATED mid-sentence: 'The number is 7 - 3' cut before the result) + LAST-integer extraction (pvl_last_uint -- the answer position in sentence replies; first-int grabbed operands). Applied uniformly to every model on this instrument; v1 numbers (0.5B 3/10, first-int, max_new=8) stay banked as v1. argv[1] = optional gguf path. Requires the gguf. Heavy: ~2-8 min (model-size dependent). Return from main (pool reap), never sys_exit. No hw writes (Rule 26). expect_exit: 0 license_tier: ORIGINAL

dependencies 3 imports · 0 importers

nx_syscalls.nx nx_propose_verify_lib.nx nx_gate_verdict.nx nx_nofloat_propose_chat_gate.n

imports: nx_syscalls.nxnx_propose_verify_lib.nxnx_gate_verdict.nx

imported by: nobody (leaf or entry point)

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

main af_w sys_now_ms sys_mmap sys_clock_gettime_mono nsv_init sys_now_ms ↻ nsv_log sys_write nf_pool nx_pool_new nx_hw_worker_count nx_hw_cpu_count sys_mmap ↻ sys_munmap sys_mmap ↻ nx_chan_new sys_mmap ↻ _nx_chan_cell sys_thread_create nx_thread_spawn sys_mmap ↻ nx_thread_spawn_fn sys_mmap ↻ sys_mmap ↻ nsv_load_meta sys_mmap ↻ nsv_log ↻ sys_read_file sys_openat_rd sys_lseek sys_mmap ↻ sys_read sys_close nx_gguf_parse nx_le_read_u32 nx_le_read_u64 nx_le_read_u32 ↻ _gguf_skip_value nx_le_read_u64 ↻

structs

none

consts

none

functions

23func main(argc: i64, argv: *i64) -> i64