code wiki / (root) / nx_disturbance.nx

nx_disturbance.nx

buildroot/runtime/nx_disturbance.nx

10866 B264 linesdepth 2pulls 2 transitivereach 1 importersview sourcekind library
docsdependenciesstructsconstsfunctions

about

nx_disturbance.nx -- constructive disturbance regime per Regenerative- Stewardship Doctrine. Per META-CARDINAL feedback-regenerative-stewardship-doctrine-captain-moroni: most ecosystems Earth produces REQUIRE disturbance to renew -- prairies need fire every 2-5 years; oak savannas every 1-3 years; longleaf pine ground fire every 1-3 years; salt marshes need tidal scouring; Pacific NW old-growth shaped by windfall + Indigenous burning + salmon-marine-nitrogen pulses. Substrate REFUSES both extraction-as-disturbance (clear-cut, drain, monocrop) AND preservation-as-freeze (no-fire, no-grazing, no-coppice). V1 ships sealed enum of disturbance types + per-ecosystem regime frequency + Indigenous-consultation-required predicate. Operator uses to plan stewardship actions; substrate informs, never executes disturbance. Composes: nx_niche -- ecosystem niche gates which regimes apply nx_covenant -- Indigenous fire-stewardship + ancestral-land FPIC nx_phenology -- disturbance timing aligned with seasonal cycle nx_pollinator -- some disturbance regimes preserve pollinator habitat Gap list (V1 honest perf verdict): - safety + regulatory constraints (urban/wildland-interface fire risk, permits) are operator + jurisdiction-supplied; V2 composes with nx_jurisdiction_egress + permitting layer - Indigenous TEK integration requires partnership; V1 flags the requirement, V2 (gated on nx_covenant maturity) handles workflow - regime-frequency targets are research-derived; per-site calibration is multi-year fieldwork genealogy_id: nishi_metacardinal_2026-05-19_regenerative_stewardship lineage_id: substrate_disturbance_v1 nx_safety_envelope: intended_use: "Constructive-disturbance regime classification + frequency-per-ecosystem + Indigenous- consultation-required predicate; refuses both extraction and preservation framings"

dependencies 2 imports · 1 importers

nx_syscalls.nx nx_tier.nx nx_disturbance.nx nx_disturbance_test.nx

imports: nx_syscalls.nxnx_tier.nx

imported by: nx_disturbance_test.nx

structs

none

consts

56const NX_DI_FIRE_PRESCRIBED: nx_int = 0 // controlled burn
57const NX_DI_FIRE_INDIGENOUS: nx_int = 1 // TEK-managed fire (FPIC required)
58const NX_DI_FLOOD_PULSE: nx_int = 2 // managed flood release
59const NX_DI_HERBIVORY_ROTATIONAL: nx_int = 3 // Allan Savory-class grazing
60const NX_DI_COPPICE: nx_int = 4 // cut-to-stump then regrow
61const NX_DI_POLLARD: nx_int = 5 // cut top + branches above browse line
62const NX_DI_WINDFALL_NATURAL: nx_int = 6 // accept storm-disturbance
63const NX_DI_SELECTIVE_HARVEST: nx_int = 7 // single-tree selection
64const NX_DI_BEAVER_REINTRO: nx_int = 8 // beaver-driven hydrology
65const NX_DI_NONE_FROZEN: nx_int = 9 // explicit no-disturbance (rare; refused as default)
66const NX_DI_N_TYPES: nx_int = 10
70const NX_ECO_TALLGRASS_PRAIRIE: nx_int = 0
71const NX_ECO_OAK_SAVANNA: nx_int = 1
72const NX_ECO_LONGLEAF_PINE: nx_int = 2
73const NX_ECO_PACIFIC_NW_OLDGROWTH: nx_int = 3
74const NX_ECO_SALT_MARSH: nx_int = 4
75const NX_ECO_RIPARIAN_BOTTOMLAND: nx_int = 5
76const NX_ECO_MIXED_HARDWOOD: nx_int = 6
77const NX_ECO_CONIFER_BOREAL: nx_int = 7
78const NX_ECO_DESERT_ARID: nx_int = 8
79const NX_ECO_ABORIGINAL_AUSTRALIAN: nx_int = 9
80const NX_ECO_N_TYPES: nx_int = 10
84const NX_DI_V_REGIME_OK: nx_int = 0
85const NX_DI_V_REQUIRES_FPIC: nx_int = 1 // Indigenous consultation
86const NX_DI_V_REQUIRES_PERMIT: nx_int = 2 // legal/regulatory
87const NX_DI_V_REFUSED_FROZEN: nx_int = 3 // preservation-as-freeze refused
88const NX_DI_V_REFUSED_EXTRACTION: nx_int = 4 // extraction disguised as disturbance
89const NX_DI_V_INCOMPATIBLE: nx_int = 5 // disturbance not appropriate for ecosystem
90const NX_DI_V_INVALID: nx_int = 99
91const NX_DI_V_N_VERDICTS: nx_int = 6

functions

95func nx_di_type_is_valid(t: nx_int) -> nx_int
103func nx_eco_type_is_valid(e: nx_int) -> nx_int
111func nx_di_v_is_valid(v: nx_int) -> nx_int
122func nx_di_requires_fpic(t: nx_int) -> nx_int
133func nx_di_requires_permit(t: nx_int) -> nx_int
150func nx_di_is_extraction_class(t: nx_int) -> nx_int
162func nx_di_ecosystem_regime_frequency_years(eco: nx_int, dis: nx_int) -> nx_int
234func nx_di_classify_proposal(eco: nx_int, dis: nx_int) -> nx_int
260func nx_di_v_is_concerning(v: nx_int) -> nx_int
called by 1: main calls 1: nx_di_v_is_valid