code wiki / (root) / nx_paged_fetch_gate.nx

nx_paged_fetch_gate.nx source

↩ module page · 60 lines · 3452 B

1// nx_paged_fetch_gate.nx -- GATE for the dynamic paged fetcher (rf_fetch_bank_paged, debt-eaten hardened form). 2// T1 POSITIVE: fresh 2x5-row SQuAD paged fetch -> returns 1, .raw EXISTS, .raw.part GONE (atomic promotion), 3// >=10 "question" keys in the file (both pages really banked). 4// T2 IDEMPOTENT: second call -> [banked-skip] returns 1 without refetching. 5// T3 NEG-CONTROL: nonexistent dataset -> returns 0, .raw NEVER created (a failed run must not look banked). 6// expect_exit: 0 license_tier: ORIGINAL 7import "nx_research_fetch_ext.nx" 8 9func pg_count_key(buf: *u8, n: i64) -> i64 { 10 // count occurrences of "question" preceded by a quote (the row key) 11 var cnt: i64 = 0 12 var i: i64 = 0 13 while i < n-9 { 14 if buf[i]==(34 as u8) { if buf[i+1]==(113 as u8) { if buf[i+2]==(117 as u8) { if buf[i+3]==(101 as u8) { 15 if buf[i+4]==(115 as u8) { if buf[i+5]==(116 as u8) { if buf[i+6]==(105 as u8) { if buf[i+7]==(111 as u8) { 16 if buf[i+8]==(110 as u8) { cnt = cnt + 1 } 17 } } } } 18 } } } } 19 i = i + 1 20 } 21 return cnt 22} 23 24func main() -> i64 { 25 let store: *TrustStore = rf_init() 26 if (store as i64) == 0 { rf_puts("no store\n" as *u8); return 1 } 27 var pass: i64 = 0 28 29 rf_puts("T1 fresh paged fetch (2x5 rows squad)\n" as *u8) 30 let rc1: i64 = rf_fetch_bank_paged("https://datasets-server.huggingface.co/rows?dataset=rajpurkar/squad&config=plain_text&split=validation" as *u8, "qab_pagedtest" as *u8, store, 5, 2) 31 let rawp: *u8 = sys_mmap(4096); rf_bpath(rawp, "knowledge/fetched/" as *u8, "qab_pagedtest" as *u8, ".raw" as *u8) 32 let partp: *u8 = sys_mmap(4096); rf_bpath(partp, "knowledge/fetched/" as *u8, "qab_pagedtest" as *u8, ".raw.part" as *u8) 33 var t1: i64 = 0 34 if rc1 == 1 { if rf_have(rawp) == 1 { if rf_have(partp) == 0 { 35 let lenbox: *i64 = sys_mmap(16) as *i64 36 let buf: *u8 = sys_read_file(rawp, lenbox) 37 if (buf as i64) != 0 { 38 let qk: i64 = pg_count_key(buf, lenbox[0]) 39 rf_puts(" raw bytes="); rf_putn(lenbox[0]); rf_puts(" question-keys="); rf_putn(qk); rf_puts("\n" as *u8) 40 if qk >= 10 { t1 = 1 } 41 } 42 } } } 43 if t1 == 1 { rf_puts("T1 PASS (promoted atomically, both pages present)\n" as *u8); pass = pass + 1 } else { rf_puts("T1 FAIL\n" as *u8) } 44 45 rf_puts("T2 idempotent re-call\n" as *u8) 46 let rc2: i64 = rf_fetch_bank_paged("https://datasets-server.huggingface.co/rows?dataset=rajpurkar/squad&config=plain_text&split=validation" as *u8, "qab_pagedtest" as *u8, store, 5, 2) 47 if rc2 == 1 { rf_puts("T2 PASS (banked-skip)\n" as *u8); pass = pass + 1 } else { rf_puts("T2 FAIL\n" as *u8) } 48 49 rf_puts("T3 NEG-CONTROL nonexistent dataset\n" as *u8) 50 let rc3: i64 = rf_fetch_bank_paged("https://datasets-server.huggingface.co/rows?dataset=nishi/does-not-exist-xyz&config=default&split=validation" as *u8, "qab_pagedneg" as *u8, store, 5, 1) 51 let negraw: *u8 = sys_mmap(4096); rf_bpath(negraw, "knowledge/fetched/" as *u8, "qab_pagedneg" as *u8, ".raw" as *u8) 52 var t3: i64 = 0 53 if rc3 == 0 { if rf_have(negraw) == 0 { t3 = 1 } } 54 if t3 == 1 { rf_puts("T3 PASS (failed fetch NOT promoted to .raw)\n" as *u8); pass = pass + 1 } else { rf_puts("T3 FAIL\n" as *u8) } 55 56 rf_puts("PAGED-FETCH GATE "); rf_putn(pass); rf_puts("/3\n" as *u8) 57 if pass == 3 { rf_puts("GREEN\n" as *u8); return 0 } 58 rf_puts("RED\n" as *u8) 59 return 1 60}