code wiki / (root) / nx_seed_bank.nx

nx_seed_bank.nx

buildroot/runtime/nx_seed_bank.nx

9349 B256 linesdepth 2pulls 2 transitivereach 1 importersview sourcekind librarytopic seed
docsdependenciesstructsconstsfunctions

about

nx_seed_bank.nx -- multi-genotype cold-storage backup substrate. Biology: a seed bank (Svalbard Global Seed Vault, Millennium Seed Bank, indigenous community seed banks) preserves GENETIC DIVERSITY in dormant form across decades-to-centuries. Each accession is content-addressed, labeled with provenance, and can be retrieved + germinated when needed to restore a lost cultivar / population. Diversity is the load-bearing property: a monoculture seed bank is a single point of failure. In Nishi: persistent cold storage of substrate genotype snapshots (config + schema + seed primitives) so a damaged installation can be restored to known-green from a chosen accession. Composes with [[nx_seed]] (the seed primitive is what gets stored), [[nx_prune]] + [[nx_regenerate]] (prune-rebuild reads from seed bank), [[feedback- thymus-sovereignty-audit-soma-germline]] (only germline accessions preserved; soma is regenerable from germline), [[feedback-end-to-end- bit-traceability-architecture]] (every accession is content-addressed + provenance-stamped). V1 ships sealed accession-kind enum + provenance-stamped record + retrieval + diversity audit (HHI-style monoculture detector).

dependencies 2 imports · 1 importers

nx_syscalls.nx nx_tier.nx nx_seed_bank.nx nx_seed_bank_test.nx

imports: nx_syscalls.nxnx_tier.nx

imported by: nx_seed_bank_test.nx

structs

58struct NxAccession
71struct NxSeedBank

consts

25const NX_MAGIC_1024: i64 = 1024
29const NX_SB_KIND_FULL_GENOTYPE: nx_int = 0 // complete germline snapshot
30const NX_SB_KIND_CONFIG_ONLY: nx_int = 1 // operator preferences
31const NX_SB_KIND_SCHEMA_ONLY: nx_int = 2 // data layout
32const NX_SB_KIND_KEY_MATERIAL: nx_int = 3 // sovereign keys (encrypted)
33const NX_SB_KIND_FAMILY_CORPUS: nx_int = 4 // family-generated content
34const NX_SB_KIND_TEK_ARCHIVE: nx_int = 5 // traditional knowledge
35const NX_SB_KIND_HEIRLOOM_CULTIVAR: nx_int = 6 // cultural/family heritage data
36const NX_SB_KIND_N: nx_int = 7
40const NX_SB_STATUS_DORMANT: nx_int = 0
41const NX_SB_STATUS_VERIFIED: nx_int = 1 // hash + signature checked
42const NX_SB_STATUS_RETRIEVED: nx_int = 2
43const NX_SB_STATUS_CORRUPTED: nx_int = 3 // hash mismatch on verify
44const NX_SB_STATUS_N: nx_int = 4
48const NX_SB_V_OK: nx_int = 0
49const NX_SB_V_OK_HEALTHY_DIVERSITY: nx_int = 1
50const NX_SB_V_MONOCULTURE_WARNING: nx_int = 2 // HHI too concentrated
51const NX_SB_V_CORRUPTION_DETECTED: nx_int = 3
52const NX_SB_V_INVALID: nx_int = 4
53const NX_SB_V_NULL: nx_int = 5
54const NX_SB_V_N: nx_int = 6
69const NX_SB_A_BYTES: nx_int = 64
80const NX_SB_BYTES: nx_int = 48

functions

84func nx_sb_kind_is_valid(k: nx_int) -> nx_int
called by 2: nx_sb_storemain
90func nx_sb_status_is_valid(s: nx_int) -> nx_int
called by 1: main
96func nx_sb_v_is_valid(v: nx_int) -> nx_int
called by 1: main
104func nx_sb_new(capacity: nx_int,
called by 1: main calls 1: sys_mmap
121func _sb_acc_at(b: *NxSeedBank, idx: nx_int) -> *NxAccession
130func nx_sb_store(b: *NxSeedBank,
called by 1: main calls 1: nx_sb_kind_is_valid
155func nx_sb_find(b: *NxSeedBank, accession_id: nx_int) -> *NxAccession
168func nx_sb_verify(b: *NxSeedBank,
called by 1: main calls 1: nx_sb_find
186func nx_sb_retrieve(b: *NxSeedBank,
called by 1: main calls 1: nx_sb_find
199func nx_sb_count_by_kind(b: *NxSeedBank, kind: nx_int) -> nx_int
211func nx_sb_count_by_status(b: *NxSeedBank, status: nx_int) -> nx_int
227func nx_sb_audit_diversity(b: *NxSeedBank) -> nx_int
246func nx_sb_total_bytes(b: *NxSeedBank) -> nx_size
called by 1: main calls 1: _sb_acc_at