code wiki / _hdl_build / nx_oeuvre_graph.nx

nx_oeuvre_graph.nx

buildroot/runtime/_hdl_build/nx_oeuvre_graph.nx

13153 B230 linesdepth 3pulls 4 transitivereach 0 importersview sourcekind tool
docsdependenciesstructsconstsfunctions

about

nx_oeuvre_graph.nx -- SREACH-OEUVRE O1: the DV2.0 MANY-TO-MANY information graph foundation, authored into the SOVEREIGN STORE (knowledge/store/oeuvre-) via nx_seg_store. This is the read-side schema of the "an agent CREATES a product in a PLACE / a person VIEWS|BUYS a product in a PLACE" model (operator, 2026-06-13): no privileged root -- ANY node (agent person/org, work, franchise, character, medium, place) is a first-class search anchor, and every relationship is many-to-many (the whole point: search "zatoichi" -> its MANY feature films, like Google's knowledge panel but sovereign + ground-up). HONEST SCOPE (rule 5, no-overclaim): O1 proves the SCHEMA + the M:N TRAVERSAL MECHANISM on a SEEDED FIXTURE (every hub source-anchor = "seed:fixture"). The LIVE enumeration of a real producer's true body-of-work from wikidata/wikipedia/Commons is authored-by-organ in O2 (resolver) + O3 (enumerator) -- NOT claimed here. This gate is the floor everything founds on. IDEMPOTENT (rule 10): a record is written only if absent-or-changed; then EVERY record is read back and the M:N traversals are recomputed FROM THE STORE -> verdict GREEN only when the store actually holds + traverses what we intended. Negative control (a bogus link, and the screwdriver NOT in a film series) MUST come back absent, so the gate cannot false-green. Evidence -> knowledge/status/oeuvre_graph.log. license_tier: ORIGINAL module: nishi-core.search.oeuvre.graph depends: nx_seg_store.nx, nx_syscalls.nx capability: OEUVRE_GRAPH_SCHEMA

dependencies 3 imports · 0 importers

nx_seg_store.nx nx_itoa_lib.nx nx_syscalls.nx nx_oeuvre_graph.nx

imports: nx_seg_store.nxnx_itoa_lib.nxnx_syscalls.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main sys_mmap og_w sys_write ss_begin ss_begin_cap sys_mmap ↻ og_streq sys_mmap ↻ ss_get sys_mmap ↻ ss_scan sys_mmap ↻ ss_manifest_dyn ss_manifest_file_dyn sys_mmap ↻ ss_cat ss_readall sys_munmap ss_scan_seglist ss_len sys_mmap ↻ ss_cat ↻ ss_readall ↻ ss_r32 og_len ss_add ss_add2 ss_w32 ss_len ↻ og_len ↻ og_seg_next sys_mmap ↻ ss_manifest ss_manifest_file sys_mmap ↻ ss_cat ↻ ss_readall ↻ ss_commit ss_segid_ok

structs

none

consts

27const OG_PREFIX: *u8 = "knowledge/store/oeuvre-"
28const OG_LOG: *u8 = "knowledge/status/oeuvre_graph.log"

functions

30func og_len(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n }
called by 3: og_streqog_hasmain
32func og_w(fd: i64, s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(fd, s, n); return 0 }
called by 2: og_emitmain calls 1: sys_write
38func og_wn(fd: i64, v: i64) -> i64 { nxi_fd(fd, v); return 0 }
called by 1: og_emit calls 1: nxi_fd
42func og_streq(key: *u8, val: *u8) -> i64
called by 1: main calls 3: sys_mmapss_getog_len
58func og_fields(key: *u8) -> i64
called by 1: main calls 2: sys_mmapss_get
73func og_has(key: *u8, needle: *u8) -> i64
called by 1: main calls 3: sys_mmapss_getog_len
93func og_absent(key: *u8) -> i64
called by 1: main calls 2: sys_mmapss_get
100func og_seg_next() -> i64
called by 1: main calls 2: sys_mmapss_manifest
107func og_emit(fd: i64, nrec: i64, written: i64, verified: i64, mns: i64, mnwa: i64, mnaw: i64, neg: i64, ok: i64) -> i64
called by 1: main calls 2: og_wog_wn
120func main() -> i64