code wiki / (root) / nx_estate_path.nx

nx_estate_path.nx

buildroot/runtime/nx_estate_path.nx

5853 B94 linesdepth 2pulls 2 transitivereach 40 importersview sourcekind librarytopic estate
docsdependenciesstructsconstsfunctions

about

nx_estate_path.nx -- THE one act every estate organ performs before reading an artifact: open a knowledge/ path WITHOUT caring which working directory it was launched from. WHY (measured twice in one session, 2026-08-04): 1. nx_swarm_endpoint_lib read "knowledge/swarm_nodes.conf" relative. The gen daemon runs with CWD=/volume1/ai/gen, so the SSOT silently missed and every consumer fell back to stale argv endpoints -- the exact DHCP outage that lib was built to end, reintroduced by a CWD. 2. nx_writebench and nx_writebench_gate each probed only "p" then "../p". Run from buildroot they reported GREEN; run from nishihost (which is the tools-daemon CWD, i.e. EVERY MCP call) the same honest board reported "result=LIAR claimed-artifacts-missing=8". A liar-killer that accuses itself because of a working directory is worse than no liar-killer. ★★★THE LAW: a verdict that changes with the caller's working directory is not a measurement. ★A fix that must be remembered at N sites has to bind to the ONE act all N perform. That act is this function. Callers ask for an estate-relative path; nobody re-spells a probe order again. FAIL-CLOSED: absent everywhere still returns a negative fd. This widens WHERE we look, never what counts as present -- an artifact that does not exist must still read as ABSENT. LAYER: runtime/ (primitive), so both runtime/ and _hdl_build/ organs may import it. Library only: NO main(), so importing it can never cause the double-main trap. license_tier: ORIGINAL module: nishi-core.estate.path capability: ESTATE_PATH_RESOLVE

dependencies 1 imports · 37 importers

nx_syscalls.nx nx_estate_path.nx nx_analyst_dashboard.nx nx_barcheck.nx nx_beir_gate.nx nx_catalog.nx nx_coe_consistency.nx nx_coe_dsse.nx nx_coe_intoto.nx nx_cwdguard.nx nx_dataeng_sota_census.nx nx_eco_scorecard.nx

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

imports: nx_syscalls.nx

imported by: nx_analyst_dashboard.nxnx_barcheck.nxnx_beir_gate.nxnx_catalog.nxnx_coe_consistency.nxnx_coe_dsse.nxnx_coe_intoto.nxnx_cwdguard.nxnx_dataeng_sota_census.nxnx_eco_scorecard.nxnx_embed_train.nxnx_evclass_route.nxnx_evidence_refresh.nxnx_favela_census.nxnx_favela_decay.nxnx_frontier_watch.nxnx_law_warden.nxnx_mesh_lb.nxnx_model_card.nxnx_notice.nxnx_photogrambench.nxnx_qplan.nxnx_quarantine.nxnx_recall_dense.nxnx_semppmi_build.nxnx_slopmeter.nxnx_sota_status.nxnx_store_catalog.nxnx_swarm_discover.nxnx_txtscan.nxnx_uat_run.nxnx_vcodec_bgop_bench.nxnx_vnsprite_gate.nxnx_write.nxnx_writebench.nxnx_writebench_gate.nxnx_xform.nx

structs

none

consts

26const EP_MAGIC_1024: i64 = 1024
28const EP_ROOT: *u8 = "/volume1/homes/elderwesto/nishihost/\x00" as *u8
29const EP_BUILDROOT: *u8 = "/volume1/homes/elderwesto/nishihost/buildroot/\x00" as *u8

functions

31func ep_join(out: *u8, pre: *u8, p: *u8) -> *u8
called by 1: ep_open_rd
60func ep_anchor() -> i64
85func ep_open_rd(p: *u8) -> i64