code wiki / (root) / nx_refintake_gate.nx

nx_refintake_gate.nx source

↩ module page · 276 lines · 20343 B

1// nx_refintake_gate.nx -- the referee for nx_refintake_lib (aesthetictwin AT22, 2026-09-16). In-process, on fixtures 2// built at runtime under /tmp/refintake_gate/ (never the production conf, never a network fetch): conf parsing, the 3// licence decision, the declared-axis refusal (the group-label neg-control), gallery discovery with dedupe and 4// percent-encoding, and the provenance parse the mirror leg relies on. Values are printed with gv_kv so a second 5// method can recompute them; the verdict line stays LAST. 6// license_tier: ORIGINAL No hw writes (Rule 26). 7import "nx_syscalls.nx" 8import "nx_gate_verdict.nx" 9import "nx_refintake_lib.nx" 10 11const RG_DIR: *u8 = "/tmp/refintake_gate" 12const RG_CONF: *u8 = "/tmp/refintake_gate/refintake.conf" 13const RG_BADCONF: *u8 = "/tmp/refintake_gate/bad.conf" 14const RG_OUTCAP: i64 = 65536 15const RG_TILDE: i64 = 126 16const RG_CONF_TEXT: *u8 = "subject|alpha|Alpha Fixture|REVIEW|operator-declared\nsource|alpha|page|https://example.test/babe/Alpha|fx_alpha_page.html|-\nsource|alpha|image|https://example.test/pics/Alpha.jpg|fx_alpha_1.jpg|2019-05\nsource|alpha|image|https://example.test/pics/Alpha2.jpg|fx_alpha_2.jpg|-\ntag|alpha|malar_projection|high\nsubject|beta|Beta Fixture|REFUSED|no-consent\nsource|beta|image|https://example.test/pics/Beta.jpg|fx_beta_1.jpg|-\n" 17const RG_BADCONF_TEXT: *u8 = "subject|alpha|Alpha Fixture|REVIEW|operator-declared\ntag|alpha|ancestry|anything\ntag|alpha|canthal_tilt|positive\n" 18// the fixture page spells the quote byte as ~ and rg_quotes rewrites it, because the lexer owns the quote character 19const RG_PAGE_TILDE: *u8 = "<div><a href=~/pics/Alpha Fixture.jpg~ class=img><img src=~/pics/Alpha Fixture_thumb3.jpg~></a><a href=~/pics/Alpha Fixture.jpg~>dup</a><a href=~/user-uploads/Alpha Fixture 2.jpg~>two</a><a href=~/pics/Alpha_thumb.jpg~>thumb</a></div>" 20const RG_RECEIPT: *u8 = "CA roots=167\nFETCH https://example.test/pics/Alpha.jpg\nstatus=200 body_bytes=4242\nPROVENANCE prov|1789584000|https://example.test/pics/Alpha.jpg|knowledge/fetched/fx_alpha_1.jpg|0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef|4242|0\nSAVED knowledge/fetched/fx_alpha_1.jpg (4242 bytes)\n" 21const RG_RECEIPT_NOPROV: *u8 = "CA roots=167\nFETCH https://example.test/pics/Alpha.jpg\nstatus=0 body_bytes=0\n" 22// host rows as the production file spells them (quote as ~); the bing needle carries no quote byte 23const RG_HOSTS_TILDE: *u8 = "# fixture hosts\nhost|babepedia-pics|https://www.babepedia.com/babe/|href=~/pics/|6|~|https://www.babepedia.com|pics\nhost|babepedia-uploads|https://www.babepedia.com/babe/|href=~/user-uploads/|6|~|https://www.babepedia.com|uploads\nhost|bing-images|https://www.bing.com/images/search|murl&quot;:&quot;|17|&quot;|-|origin images\nhost|commons-category|https://commons.wikimedia.org/wiki/Category:|href=~/wiki/File:|6|~|https://commons.wikimedia.org|file pages\n" 24// a bing results fragment: three murl origin links (one with a space, one with &amp;, one protocol-relative), a turl thumbnail and a purl page that must NOT be taken 25const RG_BING_PAGE: *u8 = "{&quot;murl&quot;:&quot;https://x.test/a b.jpg&quot;,&quot;turl&quot;:&quot;https://th.test/t.jpg&quot;,&quot;purl&quot;:&quot;https://page.test/p&quot;}{&quot;murl&quot;:&quot;https://x.test/c.jpg?w=1&amp;h=2&quot;}{&quot;murl&quot;:&quot;//cdn.test/d.jpg&quot;}{&quot;murl&quot;:&quot;https://x.test/a b.jpg&quot;}" 26const RG_BING_SKIP: i64 = 17 27const RG_BING_EXPECT: i64 = 3 28const RG_IMAGE_CLASSES: i64 = 4 29// the KVS known answer: the licence and player url read off a mirrored thothub page on 2026-09-16, the real url computed by 30// an oracle outside the estate (a Python port of the same public-domain algorithm); the live fetch is the final referee 31const RG_KVS_CODE: *u8 = "$440571814535234" 32const RG_KVS_URL: *u8 = "function/0/https://thothub.to/get_file/47/f88b17bbb9e870b22ca4eaef11836e29c1eebc25d6/1527000/1527540/1527540.mp4/" 33const RG_KVS_REAL: *u8 = "https://thothub.to/get_file/47/e9249ba11b70ebb87e8cb2a6f23e881fc1eebc25d6/1527000/1527540/1527540.mp4/" 34const RG_KVS_HEAD8: *u8 = "55165168" 35const RG_KVS_HEAD_N: i64 = 8 36const RG_KVS_TOKEN_N: i64 = 32 37const RG_KVS_PREFIX_LEN: i64 = 11 38const RG_KVS_HASH_OFF: i64 = 31 39const RG_KVS_PAGE: *u8 = "var flashvars = { video_url: 'function/0/https://h.test/get_file/1/0123456789abcdef0123456789abcdefXX/2/3/4.mp4/', postfix: '.mp4', license_code: '$440571814535234', rnd: '1' };" 40const RG_HIST_N: i64 = 256 41const RG_F_MP4: *u8 = "/tmp/refintake_gate/m.mp4" 42const RG_MP4_BOXLEN: i64 = 24 43const RG_MP4_HEAD: i64 = 12 44const RG_LC_F: i64 = 102 45const RG_LC_T: i64 = 116 46const RG_LC_Y: i64 = 121 47const RG_LC_P: i64 = 112 48const RG_LC_I: i64 = 105 49const RG_LC_S: i64 = 115 50const RG_LC_O: i64 = 111 51const RG_LC_M: i64 = 109 52const RG_F_JPEG: *u8 = "/tmp/refintake_gate/m.jpg" 53const RG_F_PNG: *u8 = "/tmp/refintake_gate/m.png" 54const RG_F_GIF: *u8 = "/tmp/refintake_gate/m.gif" 55const RG_F_WEBP: *u8 = "/tmp/refintake_gate/m.webp" 56const RG_F_HTML: *u8 = "/tmp/refintake_gate/m.html" 57const RG_F_OTHER: *u8 = "/tmp/refintake_gate/m.pdf" 58const RG_F_SHORT: *u8 = "/tmp/refintake_gate/m.short" 59const RG_FF: i64 = 255 60const RG_D8: i64 = 216 61const RG_E0: i64 = 224 62const RG_PNG0: i64 = 137 63const RG_P: i64 = 80 64const RG_N: i64 = 78 65const RG_G: i64 = 71 66 67func rg_write_bytes(path: *u8, b: *u8, n: i64) -> i64 { 68 let fd: i64 = sys_openat_wr(path, RI_MODE644) 69 if fd < 0 { return 0 - 1 } 70 let w: i64 = sys_write(fd, b, n) 71 sys_close(fd) 72 return w 73} 74 75func rg_write(path: *u8, text: *u8) -> i64 { 76 let fd: i64 = sys_openat_wr(path, RI_MODE644) 77 if fd < 0 { return 0 - 1 } 78 let w: i64 = sys_write(fd, text, ri_slen(text)) 79 sys_close(fd) 80 return w 81} 82func rg_quotes(s: *u8) -> *u8 { 83 let n: i64 = ri_slen(s) 84 let d: *u8 = sys_mmap(n + 1) 85 var i: i64 = 0 86 while i < n { if s[i] == (RG_TILDE as u8) { d[i] = RI_QUOTE as u8 } else { d[i] = s[i] } i = i + 1 } 87 d[n] = 0 as u8 88 return d 89} 90 91func main(argc: i64, argv: *i64) -> i64 { 92 gv_head("nx_refintake_gate -- reference intake: conf, licence, declared axes, discovery, provenance" as *u8) 93 let ctr: *i64 = gv_ctr() 94 sys_mkdir(RG_DIR, RI_MODE755) 95 let w1: i64 = rg_write(RG_CONF, RG_CONF_TEXT) 96 let w2: i64 = rg_write(RG_BADCONF, RG_BADCONF_TEXT) 97 gv_need("fixture-conf-written" as *u8, (w1 > 0) as i64, ctr) 98 gv_need("fixture-badconf-written" as *u8, (w2 > 0) as i64, ctr) 99 let lenp: *i64 = sys_mmap(RI_I64) as *i64 100 let buf: *u8 = ri_load(RG_CONF, lenp) 101 let n: i64 = lenp[0] 102 gv_check("fixture-conf-reached-the-condition-readable" as *u8, (n > 0) as i64, ctr) 103 let lic: *u8 = sys_mmap(RI_PATHB) 104 let hit: i64 = ri_subject_licence(buf, n, "alpha" as *u8, lic) 105 gv_check("subject-alpha-found" as *u8, (hit == 1) as i64, ctr) 106 gv_check("subject-alpha-licence-is-REVIEW" as *u8, ri_streq(lic, "REVIEW" as *u8), ctr) 107 gv_check("subject-unknown-not-found" as *u8, (ri_subject_licence(buf, n, "gamma" as *u8, lic) == 0) as i64, ctr) 108 let pages: i64 = ri_count_rows(buf, n, "source|" as *u8, "alpha" as *u8, "page" as *u8) 109 let images: i64 = ri_count_rows(buf, n, "source|" as *u8, "alpha" as *u8, "image" as *u8) 110 let all: i64 = ri_count_rows(buf, n, "source|" as *u8, "alpha" as *u8, 0 as *u8) 111 gv_check("alpha-pages-1" as *u8, (pages == 1) as i64, ctr) 112 gv_check("alpha-images-2" as *u8, (images == 2) as i64, ctr) 113 gv_check("alpha-partition-pages-plus-images-equals-all" as *u8, (pages + images == all) as i64, ctr) 114 let kind: *u8 = sys_mmap(RI_PATHB) 115 let url: *u8 = sys_mmap(RI_ROWB) 116 let mirror: *u8 = sys_mmap(RI_PATHB) 117 let date: *u8 = sys_mmap(RI_PATHB) 118 let s1: i64 = ri_source_at(buf, n, "alpha" as *u8, 1, kind, url, mirror, date) 119 gv_check("alpha-source-1-is-image" as *u8, (s1 == 1) as i64 * ri_streq(kind, "image" as *u8), ctr) 120 gv_check("alpha-source-1-url-copied" as *u8, ri_streq(url, "https://example.test/pics/Alpha.jpg" as *u8), ctr) 121 gv_check("alpha-source-1-date-copied" as *u8, ri_streq(date, "2019-05" as *u8), ctr) 122 gv_check("alpha-source-3-absent" as *u8, (ri_source_at(buf, n, "alpha" as *u8, 3, kind, url, mirror, date) == 0) as i64, ctr) 123 gv_check("mirror-allowed-REVIEW-is-beta-usable" as *u8, (ri_mirror_allowed(buf, n, "alpha" as *u8) == RI_OK) as i64, ctr) 124 gv_check("neg-control-mirror-REFUSED-subject-refused" as *u8, (ri_mirror_allowed(buf, n, "beta" as *u8) == RI_E_REFUSED) as i64, ctr) 125 gv_check("neg-control-mirror-undeclared-subject-refused" as *u8, (ri_mirror_allowed(buf, n, "gamma" as *u8) == RI_E_NOSUBJECT) as i64, ctr) 126 let bad: *u8 = sys_mmap(RI_PATHB) 127 gv_check("tags-on-declared-axes-pass" as *u8, (ri_tags_check(buf, n, bad) == 0) as i64, ctr) 128 gv_check("axis-declared-malar_projection" as *u8, ri_axis_declared("malar_projection" as *u8), ctr) 129 gv_check("axis-declared-age_at_photo" as *u8, ri_axis_declared("age_at_photo" as *u8), ctr) 130 gv_check("neg-control-axis-partial-word-not-declared" as *u8, (ri_axis_declared("malar" as *u8) == 0) as i64, ctr) 131 let blenp: *i64 = sys_mmap(RI_I64) as *i64 132 let bbuf: *u8 = ri_load(RG_BADCONF, blenp) 133 let badc: i64 = ri_tags_check(bbuf, blenp[0], bad) 134 gv_check("neg-control-group-label-tag-refused" as *u8, (badc == 1) as i64, ctr) 135 gv_check("neg-control-group-label-named" as *u8, ri_streq(bad, "ancestry" as *u8), ctr) 136 let page: *u8 = rg_quotes(RG_PAGE_TILDE) 137 let out: *u8 = sys_mmap(RG_OUTCAP) 138 let outlen: *i64 = sys_mmap(RI_I64) as *i64 139 outlen[0] = 0 140 let found: i64 = ri_discover(page, ri_slen(page), "https://example.test" as *u8, out, RG_OUTCAP, outlen) 141 gv_check("discover-finds-2-full-size-links" as *u8, (found == 2) as i64, ctr) 142 gv_check("discover-percent-encodes-spaces" as *u8, ri_contains(out, outlen[0], "https://example.test/pics/Alpha%20Fixture.jpg" as *u8), ctr) 143 gv_check("discover-user-uploads-too" as *u8, ri_contains(out, outlen[0], "/user-uploads/Alpha%20Fixture%202.jpg" as *u8), ctr) 144 gv_check("neg-control-discover-skips-thumbnails" as *u8, (ri_contains(out, outlen[0], "_thumb" as *u8) == 0) as i64, ctr) 145 let again: i64 = ri_discover(page, ri_slen(page), "https://example.test" as *u8, out, RG_OUTCAP, outlen) 146 gv_check("discover-second-pass-adds-nothing" as *u8, (again == 0) as i64, ctr) 147 let sha: *u8 = sys_mmap(RI_PATHB) 148 let bytes: i64 = ri_prov_parse(RG_RECEIPT, ri_slen(RG_RECEIPT), sha) 149 gv_check("prov-parse-bytes-4242" as *u8, (bytes == 4242) as i64, ctr) 150 gv_check("prov-parse-sha-64-hex" as *u8, (ri_slen(sha) == RI_SHA_HEX) as i64, ctr) 151 gv_check("neg-control-receipt-without-provenance-refused" as *u8, (ri_prov_parse(RG_RECEIPT_NOPROV, ri_slen(RG_RECEIPT_NOPROV), sha) == RI_E_NOPROV) as i64, ctr) 152 let mn: *u8 = sys_mmap(RI_PATHB) 153 ri_mirror_name("alpha" as *u8, 7, "https://example.test/pics/x.png" as *u8, mn) 154 gv_check("mirror-name-derived-with-png-ext" as *u8, ri_streq(mn, "ri_alpha_7.png" as *u8), ctr) 155 ri_mirror_name("alpha" as *u8, 8, "https://example.test/pics/y.jpg" as *u8, mn) 156 gv_check("mirror-name-derived-with-jpg-ext" as *u8, ri_streq(mn, "ri_alpha_8.jpg" as *u8), ctr) 157 // HOST PATTERNS AS DATA: the bing/commons/babepedia rows, matched by url prefix, applied through ri_discover_pat 158 let hosts: *u8 = rg_quotes(RG_HOSTS_TILDE) 159 let hn: i64 = ri_slen(hosts) 160 let needle: *u8 = sys_mmap(RI_PATHB) 161 let term: *u8 = sys_mmap(RI_PATHB) 162 let base: *u8 = sys_mmap(RI_PATHB) 163 let skipp: *i64 = sys_mmap(RI_I64) as *i64 164 let h0: i64 = ri_host_at(hosts, hn, "https://www.bing.com/images/search?q=alpha&first=1" as *u8, 0, needle, skipp, term, base) 165 gv_check("host-bing-row-matched-by-prefix" as *u8, (h0 == 1) as i64, ctr) 166 gv_check("host-bing-needle-is-murl-quot" as *u8, ri_streq(needle, "murl&quot;:&quot;" as *u8), ctr) 167 gv_check("host-bing-skip-17" as *u8, (skipp[0] == RG_BING_SKIP) as i64, ctr) 168 gv_check("host-bing-term-is-quot" as *u8, ri_streq(term, "&quot;" as *u8), ctr) 169 gv_check("host-bing-base-is-dash" as *u8, ri_streq(base, "-" as *u8), ctr) 170 gv_check("host-bing-second-row-absent" as *u8, (ri_host_at(hosts, hn, "https://www.bing.com/images/search?q=alpha" as *u8, 1, needle, skipp, term, base) == 0) as i64, ctr) 171 let hb0: i64 = ri_host_at(hosts, hn, "https://www.babepedia.com/babe/Alpha" as *u8, 0, needle, skipp, term, base) 172 let hb1: i64 = ri_host_at(hosts, hn, "https://www.babepedia.com/babe/Alpha" as *u8, 1, needle, skipp, term, base) 173 gv_check("host-babepedia-carries-two-rows" as *u8, (hb0 + hb1 == 2) as i64, ctr) 174 gv_check("host-babepedia-second-row-is-user-uploads" as *u8, ri_contains(needle, ri_slen(needle), "/user-uploads/" as *u8), ctr) 175 gv_check("neg-control-host-unknown-prefix-no-row" as *u8, (ri_host_at(hosts, hn, "https://nobody.test/x" as *u8, 0, needle, skipp, term, base) == 0) as i64, ctr) 176 let bpage: *u8 = RG_BING_PAGE 177 let bout: *u8 = sys_mmap(RG_OUTCAP) 178 let boutlen: *i64 = sys_mmap(RI_I64) as *i64 179 boutlen[0] = 0 180 ri_host_at(hosts, hn, "https://www.bing.com/images/search?q=alpha" as *u8, 0, needle, skipp, term, base) 181 let bfound: i64 = ri_discover_pat(bpage, ri_slen(bpage), needle, skipp[0], term, base, bout, RG_OUTCAP, boutlen) 182 gv_check("bing-discover-finds-3-origin-urls" as *u8, (bfound == RG_BING_EXPECT) as i64, ctr) 183 gv_check("bing-discover-percent-encodes-space" as *u8, ri_contains(bout, boutlen[0], "https://x.test/a%20b.jpg\n" as *u8), ctr) 184 gv_check("bing-discover-decodes-amp" as *u8, ri_contains(bout, boutlen[0], "https://x.test/c.jpg?w=1&h=2\n" as *u8), ctr) 185 gv_check("bing-discover-protocol-relative-gets-https" as *u8, ri_contains(bout, boutlen[0], "https://cdn.test/d.jpg\n" as *u8), ctr) 186 gv_check("neg-control-bing-discover-skips-thumbnail-turl" as *u8, (ri_contains(bout, boutlen[0], "th.test" as *u8) == 0) as i64, ctr) 187 gv_check("neg-control-bing-discover-skips-page-purl" as *u8, (ri_contains(bout, boutlen[0], "page.test" as *u8) == 0) as i64, ctr) 188 // IMAGE CLASS BY MAGIC: a picture is what its first bytes say, never what its url promised 189 let mj: *u8 = sys_mmap(RI_MAGIC_N) 190 mj[0] = RG_FF as u8; mj[1] = RG_D8 as u8; mj[2] = RG_FF as u8; mj[3] = RG_E0 as u8 191 rg_write_bytes(RG_F_JPEG, mj, 4) 192 let mp: *u8 = sys_mmap(RI_MAGIC_N) 193 mp[0] = RG_PNG0 as u8; mp[1] = RG_P as u8; mp[2] = RG_N as u8; mp[3] = RG_G as u8 194 rg_write_bytes(RG_F_PNG, mp, 4) 195 rg_write(RG_F_GIF, "GIF89a fixture" as *u8) 196 rg_write(RG_F_WEBP, "RIFF0000WEBPVP8 " as *u8) 197 rg_write(RG_F_HTML, " <!doctype html><title>Just a moment</title>" as *u8) 198 rg_write(RG_F_OTHER, "%PDF-1.4 not a picture" as *u8) 199 rg_write(RG_F_SHORT, "ab" as *u8) 200 gv_check("magic-jpeg-classified" as *u8, (ri_image_class(RG_F_JPEG) == RI_IMG_JPEG) as i64, ctr) 201 gv_check("magic-png-classified" as *u8, (ri_image_class(RG_F_PNG) == RI_IMG_PNG) as i64, ctr) 202 gv_check("magic-gif-classified" as *u8, (ri_image_class(RG_F_GIF) == RI_IMG_GIF) as i64, ctr) 203 gv_check("magic-webp-classified" as *u8, (ri_image_class(RG_F_WEBP) == RI_IMG_WEBP) as i64, ctr) 204 gv_check("neg-control-html-stub-is-not-an-image" as *u8, (ri_image_class(RG_F_HTML) == RI_IMG_HTML) as i64, ctr) 205 gv_check("neg-control-pdf-body-is-other" as *u8, (ri_image_class(RG_F_OTHER) == RI_IMG_OTHER) as i64, ctr) 206 gv_check("neg-control-two-byte-file-unreadable" as *u8, (ri_image_class(RG_F_SHORT) == RI_IMG_UNREADABLE) as i64, ctr) 207 gv_check("neg-control-absent-file-unreadable" as *u8, (ri_image_class("/tmp/refintake_gate/absent.bin" as *u8) == RI_IMG_UNREADABLE) as i64, ctr) 208 gv_check("is-image-partition-4-of-8-classes" as *u8, (ri_is_image(RI_IMG_JPEG) + ri_is_image(RI_IMG_PNG) + ri_is_image(RI_IMG_GIF) + ri_is_image(RI_IMG_WEBP) + ri_is_image(RI_IMG_HTML) + ri_is_image(RI_IMG_OTHER) + ri_is_image(RI_IMG_UNREADABLE) + ri_is_image(RI_IMG_MP4) == RG_IMAGE_CLASSES) as i64, ctr) 209 gv_check("class-word-html-stub-named" as *u8, ri_streq(ri_class_word(RI_IMG_HTML), "HTML-STUB" as *u8), ctr) 210 // VIDEO BY MAGIC and the KVS player transform (AT24): the known answer was computed by an oracle outside the estate 211 let mm: *u8 = sys_mmap(RI_MAGIC_N) 212 mm[0] = 0 as u8; mm[1] = 0 as u8; mm[2] = 0 as u8; mm[3] = RG_MP4_BOXLEN as u8 213 mm[4] = RG_LC_F as u8; mm[5] = RG_LC_T as u8; mm[6] = RG_LC_Y as u8; mm[7] = RG_LC_P as u8 214 mm[8] = RG_LC_I as u8; mm[9] = RG_LC_S as u8; mm[10] = RG_LC_O as u8; mm[11] = RG_LC_M as u8 215 rg_write_bytes(RG_F_MP4, mm, RG_MP4_HEAD) 216 gv_check("magic-mp4-classified" as *u8, (ri_image_class(RG_F_MP4) == RI_IMG_MP4) as i64, ctr) 217 gv_check("mp4-is-video-not-image" as *u8, ri_is_video(RI_IMG_MP4) * (ri_is_image(RI_IMG_MP4) == 0) as i64, ctr) 218 gv_check("class-word-mp4-named" as *u8, ri_streq(ri_class_word(RI_IMG_MP4), "MP4" as *u8), ctr) 219 let tok: *i64 = sys_mmap(RI_KVS_TOKEN_CAP * RI_I64) as *i64 220 let tn: i64 = ri_kvs_license_token(RG_KVS_CODE, tok, RI_KVS_TOKEN_CAP) 221 gv_check("kvs-token-has-32-entries" as *u8, (tn == RG_KVS_TOKEN_N) as i64, ctr) 222 var tk: i64 = 0 223 var head_ok: i64 = 1 224 var range_ok: i64 = 1 225 while tk < tn { 226 if tok[tk] < 0 { range_ok = 0 } 227 if tok[tk] > 9 { range_ok = 0 } 228 if tk < RG_KVS_HEAD_N { if tok[tk] != (RG_KVS_HEAD8[tk] as i64) - RI_DIGIT0 { head_ok = 0 } } 229 tk = tk + 1 230 } 231 gv_check("kvs-token-head-matches-oracle" as *u8, head_ok * (tn >= RG_KVS_HEAD_N) as i64, ctr) 232 gv_check("kvs-token-entries-are-digits" as *u8, range_ok, ctr) 233 let real: *u8 = sys_mmap(RI_ROWB) 234 let rrc: i64 = ri_kvs_real_url(RG_KVS_URL, RG_KVS_CODE, real) 235 gv_check("kvs-real-url-transformed" as *u8, (rrc == 1) as i64, ctr) 236 gv_check("kvs-real-url-matches-oracle-kat" as *u8, ri_streq(real, RG_KVS_REAL), ctr) 237 gv_check("kvs-real-url-keeps-the-tail" as *u8, ri_contains(real, ri_slen(real), "c1eebc25d6/1527000/1527540/1527540.mp4/" as *u8), ctr) 238 let hin: *i64 = sys_mmap(RG_HIST_N * RI_I64) as *i64 239 let hout: *i64 = sys_mmap(RG_HIST_N * RI_I64) as *i64 240 var hi: i64 = 0 241 while hi < RI_KVS_HASH_LEN { 242 let ci: i64 = RG_KVS_URL[RG_KVS_PREFIX_LEN + RG_KVS_HASH_OFF + hi] as i64 243 let co: i64 = real[RG_KVS_HASH_OFF + hi] as i64 244 hin[ci] = hin[ci] + 1 245 hout[co] = hout[co] + 1 246 hi = hi + 1 247 } 248 var same: i64 = 1 249 hi = 0 250 while hi < RG_HIST_N { if hin[hi] != hout[hi] { same = 0 } hi = hi + 1 } 251 gv_check("kvs-hash-is-a-permutation-of-the-input" as *u8, same, ctr) 252 let pass: *u8 = sys_mmap(RI_ROWB) 253 gv_check("kvs-plain-url-passes-through" as *u8, (ri_kvs_real_url("https://x.test/a.mp4" as *u8, RG_KVS_CODE, pass) == 0) as i64 * ri_streq(pass, "https://x.test/a.mp4" as *u8), ctr) 254 gv_check("neg-control-kvs-short-code-refused" as *u8, (ri_kvs_real_url(RG_KVS_URL, "$12345" as *u8, pass) == RI_KVS_E_CODE) as i64, ctr) 255 gv_check("neg-control-kvs-url-without-hash-refused" as *u8, (ri_kvs_real_url("function/0/https://x.test/a" as *u8, RG_KVS_CODE, pass) == RI_KVS_E_URL) as i64, ctr) 256 let xv: *u8 = sys_mmap(RI_ROWB) 257 let xc: *u8 = sys_mmap(RI_PATHB) 258 let xr: i64 = ri_kvs_extract(RG_KVS_PAGE, ri_slen(RG_KVS_PAGE), xv, xc) 259 gv_check("kvs-extract-finds-both-fields" as *u8, (xr == 1) as i64, ctr) 260 gv_check("kvs-extract-video-url-copied" as *u8, ri_prefix(xv, "function/0/https://h.test/get_file/1/" as *u8), ctr) 261 gv_check("kvs-extract-license-copied" as *u8, ri_streq(xc, RG_KVS_CODE), ctr) 262 gv_check("neg-control-kvs-extract-page-without-player" as *u8, (ri_kvs_extract(RG_PAGE_TILDE, ri_slen(RG_PAGE_TILDE), xv, xc) == 0) as i64, ctr) 263 gv_values_head() 264 gv_kv("kvs_token_n" as *u8, tn) 265 gv_kv("kvs_real_rc" as *u8, rrc) 266 gv_kv("host_rows_bytes" as *u8, hn) 267 gv_kv("bing_discovered" as *u8, bfound) 268 gv_kv("bing_skip" as *u8, skipp[0]) 269 gv_kv("fixture_conf_bytes" as *u8, n) 270 gv_kv("alpha_pages" as *u8, pages) 271 gv_kv("alpha_images" as *u8, images) 272 gv_kv("discovered" as *u8, found) 273 gv_kv("prov_bytes" as *u8, bytes) 274 gv_kv("bad_tags" as *u8, badc) 275 return gv_verdict("nx_refintake_gate" as *u8, ctr, "conf parsing, the licence decision (REVIEW beta-usable, REFUSED refused, undeclared refused), the declared-axis refusal named by axis, discovery with dedupe and percent-encoding, and the provenance parse, all on runtime fixtures under /tmp/refintake_gate" as *u8) 276}