nx_legal_portal_boot.nx
buildroot/runtime/nx_legal_portal_boot.nx
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
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
| 28 | const K_MAGIC_8192: i64 = 8192 |
| 29 | const K_MAGIC_16384: i64 = 16384 |
functions
| 32 | func lp_boot_save(pctx: *NxPortalCtx, base: *u8, tenant: *u8) -> i64 |
| 47 | func lp_boot_load(pctx: *NxPortalCtx, base: *u8, tenant: *u8, |
| 84 | func lp_is_post(req: *u8, n: i64) -> i64 called by 1: lp_serve_conn_rw |
| 93 | func lp_serve_conn_rw(pctx: *NxPortalCtx, ncap: i64, base: *u8, tenant: *u8, cfd: i64) -> i64 |