code wiki / (root) / nx_asset_visibility_gate.nx

nx_asset_visibility_gate.nx

buildroot/runtime/nx_asset_visibility_gate.nx

7821 B140 linesdepth 10pulls 14 transitivereach 0 importersview sourcekind gate/prooftopic asset
docsdependenciesstructsconstsfunctions

about

nx_asset_visibility_gate.nx -- KAT + TEETH for nx_asset_visibility (flag public/private BY SOURCE), now reading the policy from the NATIVE seg_store (no TSV). The gate SEEDS its own isolated /tmp policy store (vis_seed) and reads via the _p variants, so it never touches the production policy. (a) gallery location -> operator-only, NOT public (b) web_assets/ -> public (c) downloaded -> private, NOT public (d) type=doc fallback -> public TEETH: (e) UNKNOWN source -> operator-only (fail-closed) (f) NO policy store -> operator-only bridge: gallery->OWNER, wiki->ANON, downloaded->PRO (plugs into R6/aa_decide) Verdict appended to knowledge/status/asset_visibility_gate.log (additive law #13). expect_exit: 0 license_tier: ORIGINAL

dependencies 6 imports · 0 importers

nx_syscalls.nx nx_canon_cid.nx nx_asset_record.nx nx_asset_access.nx nx_asset_visibility.nx nx_gate_verdict.nx nx_asset_visibility_gate.nx

imports: nx_syscalls.nxnx_canon_cid.nxnx_asset_record.nxnx_asset_access.nxnx_asset_visibility.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 sys_mmap gt_prefix sys_now_ms sys_mmap ↻ sys_clock_gettime_mono sys_mmap ↻ vis_seed ncfg_begin ss_begin ss_begin_cap sys_mmap ↻ vis_seed_rule sys_mmap ↻ ncfg_add_row sys_mmap ↻ canon_encode sys_mmap ↻ cc_cmp cc_w32 cc_len sys_munmap ncfg_key ss_add ss_add2 ss_w32 ss_len vis_tag ncfg_set_count sys_mmap ↻ ncfg_count_key ncfg_itoa sys_mmap ↻ ss_add ↻ vis_tag ↻ ncfg_commit ss_commit

structs

none

consts

none

functions

19func g_puts(logfd: i64, s: *u8) -> i64
called by 3: g_putnexpect_vismain calls 1: sys_write
26func g_putn(logfd: i64, v: i64) -> i64
40func g_streq(a: *u8, b: *u8) -> i64
called by 1: expect_vis
45func E() -> *u8 { return "\x00" as *u8 }
called by 1: mk_src
46func sset(a: *i64, i: i64, s: *u8) -> i64 { a[i] = s as i64; return 0 }
called by 1: mk_src
48func mk_src(typ: *u8, prov: *u8, loc: *u8, out: *u8) -> i64
64func gt_prefix(prefix: *u8, base: *u8) -> i64
called by 1: main calls 2: sys_now_mssys_mmap
80func expect_vis(logfd: i64, label: *u8, rec: *u8, n: i64, pp: *u8, want_viz: *u8, want_pub: i64) -> i64
91func main() -> i64