code wiki / (root) / nx_asset_ingest_real_gate.nx

nx_asset_ingest_real_gate.nx

buildroot/runtime/nx_asset_ingest_real_gate.nx

9977 B170 linesdepth 10pulls 15 transitivereach 0 importersview sourcekind gate/prooftopic asset
docsdependenciesstructsconstsfunctions

about

nx_asset_ingest_real_gate.nx -- KAT + TEETH for the PRODUCTION ingest cores (R5b). The R5 populator (nx_asset_ingest_real) had NO gate -- its exceed claims were only proven on synthetic fixtures, never the REAL read-from-disk path. This gate drives the SAME production cores (nx_asset_ingest_lib ai_ingest_doc_at / ai_ingest_image_at) against REAL on-disk bytes + a FRESH /tmp catalog (the production store is never touched), proving: (T1) a REAL wiki HTML page -> NEW, catalog count 1 (T2) re-ingest the identical page -> DUP, count STAYS 1 (content-addressed idempotence #10) (T3 TEETH) a MISSING file -> read-fail rc=0, count STAYS 1 (graceful, no crash) (T4) a REAL PNG -> NEW, and the stored record carries REAL type=image / encoding_format=image/png / width extracted from the actual IHDR (no fabrication) (T5) re-ingest the identical PNG -> DUP, count STAYS 1 (T6 TEETH) an HTML file fed to the IMAGE path -> SKIP rc=0, count==0 (a non-PNG is NEVER cataloged as an image -- am_extract_image refuses; no fabricated dimensions) Fixtures are real files already in the tree: web_assets/charter.html + knowledge/status/grid_demo.png. Verdict appended to knowledge/status/asset_ingest_real_gate.log (additive law #13). expect_exit: 0 license_tier: ORIGINAL

dependencies 7 imports · 0 importers

nx_syscalls.nx nx_canon_cid.nx nx_uxf_decode.nx nx_asset_record.nx nx_asset_catalog.nx nx_asset_ingest_lib.nx nx_gate_verdict.nx nx_asset_ingest_real_gate.nx

imports: nx_syscalls.nxnx_canon_cid.nxnx_uxf_decode.nxnx_asset_record.nxnx_asset_catalog.nxnx_asset_ingest_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 sys_openat_append g_puts sys_write gt_doc sys_mmap gt_prefix sys_now_ms sys_mmap ↻ sys_clock_gettime_mono sys_mmap ↻ ai_ingest_doc_at sys_mmap ↻ ai_read_cap sys_openat_rd sys_mmap ↻ sys_read sys_close sset E ai_mk_rec sys_mmap ↻ ar_fields sys_mmap ↻ ar_addf ar_present ar_encode canon_encode sys_mmap ↻ cc_cmp cc_w32 cc_len sys_munmap cat_ingest_cid ar_cid cid_of sys_mmap ↻ sha256_digest cid_from_digest sys_munmap ↻

structs

none

consts

none

functions

27func g_puts(logfd: i64, s: *u8) -> i64
34func g_putn(logfd: i64, v: i64) -> i64
48func g_streq(a: *u8, b: *u8) -> i64
called by 1: gt_img_meta
58func g_present(v: *u8) -> i64
called by 1: gt_img_meta
64func gt_prefix(prefix: *u8, base: *u8, salt: i64) -> i64
80func gt_img_meta(logfd: i64, prefix: *u8) -> i64
105func gt_doc(logfd: i64) -> i64
127func gt_image(logfd: i64) -> i64
143func gt_skip(logfd: i64) -> i64
152func main() -> i64