code wiki / _hdl_build / nx_gamefeel_oracle_gate.nx

nx_gamefeel_oracle_gate.nx

buildroot/runtime/_hdl_build/nx_gamefeel_oracle_gate.nx

8241 B206 linesdepth 5pulls 11 transitivereach 0 importersview sourcekind gate/proof
docsdependenciesstructsconstsfunctions

about

nx_gamefeel_oracle_gate.nx -- FEEL PROVES AGAINST BANKED REFERENCES (operator 2026-08-02: "mine the modding communities and published work as oracles to SKIP guess-and-test"). The crypto lane's KAT law applied to game feel: every tunable the engine ships must sit inside a band banked in knowledge/gamefeel_oracle.conf WITH its sources named; a tunable whose row is MISSING is RED by construction (no unbanked numbers), and every compare is CROSS-MULTIPLIED (the banked truncation law). Values are read from the LIVE symbols the engine itself uses (wc_spec arena + the lib/engine constants) -- the gate cannot drift from the game because they share one definition. license_tier: ORIGINAL No hw writes (Rule 26). expect_exit: 0

dependencies 2 imports · 0 importers

nx_wasm_craft.nx nx_gate_verdict.nx nx_gamefeel_oracle_gate.nx

imports: nx_wasm_craft.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 gv_ctr sys_mmap gv_head gv_puts sys_write gf_load sys_read_file sys_openat_rd sys_lseek sys_mmap ↻ sys_read sys_close gv_puts ↻ gv_check gv_puts ↻ gv_verdict gv_puts ↻ gv_num sys_mmap ↻ sys_write ↻ sys_munmap gv_journal sys_openat_append sys_mmap ↻ gv_catn sys_mmap ↻ sys_munmap ↻ sys_now_realtime_sec sys_mmap ↻ sys_clock_gettime_real gv_cat sys_write ↻ sys_close ↻ sys_munmap ↻ wc_spec wsp wpack wsp ↻ gf_band

structs

none

consts

12const GF_MAGIC_4096: i64 = 4096
14const GF_CONF: *u8 = "knowledge/gamefeel_oracle.conf"
15const GF_ROWCAP: i64 = 32
16const GF_TAB: i64 = 9
17const GF_NL: i64 = 10
18const GF_HASH: i64 = 35

functions

27func gf_load() -> i64 {
called by 1: main calls 1: sys_read_file
85func gf_eq(a: *u8, b: *u8) -> i64 {
called by 1: gf_find
92func gf_find(key: *u8) -> i64 {
called by 2: gf_bandmain calls 1: gf_eq
102func gf_band(name: *u8, key: *u8, val: i64, ctr: *i64) -> i64 {
called by 1: main calls 4: gf_findgv_putsgv_numgv_check
129func main() -> i64 {