code wiki / (root) / nx_mvault_ingest.nx

nx_mvault_ingest.nx

buildroot/runtime/nx_mvault_ingest.nx

7248 B170 linesdepth 4pulls 4 transitivereach 14 importersview sourcekind librarytopic mvault
docsdependenciesstructsconstsfunctions

about

nx_mvault_ingest.nx -- vault classify-at-the-door: shallow faceted split, two FULLY ORTHOGONAL axes so everything splits gen-vs-real. BROWSE MODEL (operator 2026-07-17, "i dont want to walk a huge tree ... gifs together, stories together, pages/warc together, video together, major sections gen vs real ... 3d models and audiobooks ... split as gen or real ... origin/source as a VISIBLE TAG i can see as i browse"): MAJOR axis = provenance CLASS: gen (AI) vs real (downloaded/captured). GROUP axis = media TYPE: image / gif / video / audio / story / page(WARC) / manga / model3d / audiobook -- "gifs together, ...". VISIBLE TAG = the SOURCE string (tumblr/reddit/redgifs/cam/...), a badge + filter, NOT a folder. CLASS and TYPE are independent inputs (a gen 3D model and a real audiobook both classify correctly); source is passthrough metadata. THE SPLIT FIX: download sources MIX types, so TYPE is keyed on the ACTUAL bytes (nx_media_sniff) -- never on the source. A type_hint covers the types that are not byte-sniffable (manga pages, audiobooks, some 3D). SOTA STORAGE: this feeds nx_mvault_record -> canonical NXR1 CID records on the seg-store (NOT tsv); the str mappers below are the record field values. Classify-at-the-door MLS stamp keeps private content in the TS index. NOTE: nx_vault.nx = the SECRETS vault; distinct nx_mvault_/mv_ prefix. Composes: nx_media_sniff.nx (nx_sniff), nx_media_pool.nx (NX_MEDIA_TYPE_*). license_tier: ORIGINAL

dependencies 2 imports · 11 importers

nx_media_pool.nx nx_media_sniff.nx nx_mvault_ingest.nx nx_mvault.nx nx_mvault_context.nx nx_mvault_context_gate.nx nx_mvault_ingest_gate.nx nx_mvault_layout.nx nx_mvault_layout_gate.nx nx_mvault_record.nx nx_mvault_record_gate.nx nx_mvault_reindex.nx nx_mvault_reindex_gate.nx

diagram shows first 10 each side; +0 more imports, +1 more importers in the complete lists below.

imports: nx_media_pool.nxnx_media_sniff.nx

imported by: nx_mvault.nxnx_mvault_context.nxnx_mvault_context_gate.nxnx_mvault_ingest_gate.nxnx_mvault_layout.nxnx_mvault_layout_gate.nxnx_mvault_record.nxnx_mvault_record_gate.nxnx_mvault_reindex.nxnx_mvault_reindex_gate.nxnx_mvault_walk.nx

structs

none

consts

32const MV_CLASS_UNKNOWN: i64 = 0
33const MV_CLASS_GEN: i64 = 1
34const MV_CLASS_REAL: i64 = 2
37const MV_TYPE_UNKNOWN: i64 = 0
38const MV_TYPE_IMAGE: i64 = 1
39const MV_TYPE_GIF: i64 = 2
40const MV_TYPE_VIDEO: i64 = 3
41const MV_TYPE_AUDIO: i64 = 4
42const MV_TYPE_STORY: i64 = 5 // text
43const MV_TYPE_PAGE: i64 = 6 // archived web page (WARC/HTML)
44const MV_TYPE_MANGA: i64 = 7 // multi-page manga/comic (image-sequence work)
45const MV_TYPE_MODEL3D: i64 = 8 // 3D model / mesh
46const MV_TYPE_AUDIOBOOK: i64 = 9 // long-form narrated audio
47const MV_TYPE_BOOK: i64 = 10 // ebook (epub/pdf) / text book
50const MV_PROV_UNKNOWN: i64 = 0
51const MV_PROV_GEN: i64 = 1
52const MV_PROV_REAL: i64 = 2
55const MV_HINT_NONE: i64 = 0
56const MV_HINT_MANGA: i64 = 1
57const MV_HINT_AUDIOBOOK: i64 = 2
58const MV_HINT_MODEL3D: i64 = 3
62const MV_LVL_U: i64 = 0
63const MV_LVL_C: i64 = 1
64const MV_LVL_S: i64 = 2
65const MV_LVL_TS: i64 = 3

functions

68func mv_class(prov: i64) -> i64
75func mv_is_glb(b: *u8, n: i64) -> i64
called by 1: mv_type_bytes
85func mv_type(hint: i64, mtype: i64) -> i64
111func mv_type_bytes(hint: i64, b: *u8, n: i64,
called by 1: main calls 3: mv_typemv_is_glbnx_sniff
121func mv_level(public_release: i64) -> i64
called by 1: main
127func mv_class_str(c: i64) -> *u8
136func mv_type_str(t: i64) -> *u8
161func mv_level_str(l: i64) -> *u8
called by 2: mainmv_record_build