code wiki / (root) / nx_legal_portal_boot.nx

nx_legal_portal_boot.nx

buildroot/runtime/nx_legal_portal_boot.nx

4436 B112 linesdepth 12pulls 20 transitivereach 3 importersview sourcekind librarytopic legal
docsdependenciesstructsconstsfunctions

about

nx_legal_portal_boot.nx -- LEGAL RUNG D8: portal boot-reload (BUILT->LIVE persistence wiring). module: nishi-core.legal.portal_boot capability: LEGAL_PORTAL_BOOT Wires D7 persistence (nx_legal_store) into the D6 portal: a portal daemon can PERSIST a tenant's workflow stores and RELOAD them on boot, so in-flight envelopes/signatures survive a restart instead of vanishing with the in-RAM demo fixture. This is the step that turns the loopback-live portal from "serves over a socket but forgets on restart" into "durable across restarts". lp_boot_save : persist all four per-tenant stores (envelopes, recipients, annotations, vault) to the tenant's files. lp_boot_load : on boot, load all four into fresh arrays, set the pctx counts, and rebuild env_ids from the reloaded envelope store (absent files -> empty, a clean first boot, never garbage). Composes: nx_legal_portal (NxPortalCtx), nx_legal_store (ls_save/load), and the store strides from nx_doc_envelope / nx_doc_annotate / nx_doc_vault. license_tier: ORIGINAL lineage_id: nishi_legal_portal_boot_d8

dependencies 6 imports · 3 importers

nx_syscalls.nx nx_legal_portal.nx nx_legal_store.nx nx_doc_envelope.nx nx_doc_annotate.nx nx_doc_vault.nx nx_legal_portal_boot.nx nx_legal_portal_boot_gate.nx nx_legal_portal_daemon.nx nx_legal_portal_post_gate.nx

imports: nx_syscalls.nxnx_legal_portal.nxnx_legal_store.nxnx_doc_envelope.nxnx_doc_annotate.nxnx_doc_vault.nx

imported by: nx_legal_portal_boot_gate.nxnx_legal_portal_daemon.nxnx_legal_portal_post_gate.nx

structs

none

consts

28const K_MAGIC_8192: i64 = 8192
29const K_MAGIC_16384: i64 = 16384

functions

32func lp_boot_save(pctx: *NxPortalCtx, base: *u8, tenant: *u8) -> i64
47func lp_boot_load(pctx: *NxPortalCtx, base: *u8, tenant: *u8,
called by 3: mainmainmain calls 3: sys_mmapls_pathls_load
84func lp_is_post(req: *u8, n: i64) -> i64
called by 1: lp_serve_conn_rw
93func lp_serve_conn_rw(pctx: *NxPortalCtx, ncap: i64, base: *u8, tenant: *u8, cfd: i64) -> i64