code wiki / _hdl_build / nx_ac_monitor_census.nx

nx_ac_monitor_census.nx

buildroot/runtime/_hdl_build/nx_ac_monitor_census.nx

16825 B344 linesdepth 4pulls 10 transitivereach 0 importersview sourcekind tooltopic ac
docsdependenciesstructsconstsfunctions

about

nx_ac_monitor_census.nx -- EVIDENCE-BACKED SOTA gap map for the sovereign AC/HVAC monitoring product ("Flume for AC", data-center-grade, hubless, browser-first). The "census" leg of the operator's research/census/critic/ adversary product. DISCIPLINE (per project-nishi-sensor-gap-census + feedback-census-evidence- backed-not-symbol-presence): a capability is credited HAVE only with EVIDENCE. This census goes beyond symbol-presence -- for the organs built in this workstream it EXECUTES a live witness (runs the organ, checks a known output); crediting a capability whose witness fails turns the census RED. Existing-stack capabilities proven by a sibling gate are HAVE-CITED (named gate, not re-run here). Unbuilt capabilities are GAP with their SOTA source. It is ITSELF liar-killed: a negative-control witness (an asserted-false output) MUST fail -- if the witness harness "passes" a false claim, RED. Prints the honest map + coverage permille + a verdict every run. GREEN = the witness harness is trustworthy (all HAVE witnesses pass, neg-control fails, coverage floor held) -- NOT "coverage is complete"; the GAP rows ARE the remaining work. Sovereign nx_cc->nxasm (no gcc). CWD = nxc2 root. expect_exit: 0 license_tier: ORIGINAL genealogy_id: project-hvac-efficiency-sclass-2026-06-23 + project-nishi-sensor-gap-census-2026-07-14 (census discipline)

dependencies 7 imports · 0 importers

syscalls.nx runtime.nx nx_axioms.nx nx_psychrometrics.nx nx_ac_enthalpy_metrics.nx nx_ac_sensor_verify.nx nx_ac_fdd.nx nx_ac_monitor_census.nx

imports: syscalls.nxruntime.nxnx_axioms.nxnx_psychrometrics.nxnx_ac_enthalpy_metrics.nxnx_ac_sensor_verify.nxnx_ac_fdd.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main w_psychro nx_psy_psat_pa nx_psy_psat_node nx_psy_enthalpy_from_rh nx_psy_pw_pa nx_psy_psat_pa ↻ nx_psy_humratio_mg nx_psy_enthalpy_j w_metrics nx_ac_cop_x100 nx_ac_carnot_cop_x100 nx_ac_temp_cK nx_ac_eer_x100 w_drift nx_ac_efficiency_drift_per w_liarkill nx_acv_verify nx_ac_evap_split_mC nx_psy_enthalpy_from_rh ↻ nx_ac_delivered_cooling_w nx_ac_superheat_mC nx_ac_subcool_mC nx_ac_carnot_cop_x100 ↻ nx_ac_cop_x100 ↻ nx_acv_corroborate w_independence nx_acv_verify ↻ w_fdd nx_ac_fdd_analyze w_negctl nx_psy_psat_pa ↻ print sys_write strlen row print ↻

structs

none

consts

45const K_PSY_T25_mC: i64 = 25000
46const K_PSY_PSAT_25C_PA: i64 = 3170
47const K_PSY_T20_mC: i64 = 20000
48const K_PSY_PSAT_20C_PA: i64 = 2339
49const K_PSY_ENTHALPY_25C_60RH: i64 = 55460
50const K_NEGCTL_WRONG_PSAT_PA: i64 = 9999 // deliberately NOT psat(25C): the neg-control must NOT match
53const K_COP_HEAT_W: i64 = 10800
54const K_COP_ELEC_W: i64 = 3000
55const K_CARNOT_COLD_mC: i64 = 24000
56const K_CARNOT_HOT_mC: i64 = 35000
57const K_CARNOT_COP_X100: i64 = 2701
58const K_EER_AT_COP360_X100: i64 = 1228
61const K_RDG_SUPPLY_mC: i64 = 12000
62const K_RDG_RETURN_mC: i64 = 24000
63const K_RDG_RETURN_B_mC: i64 = 27000
64const K_RDG_AIRFLOW_CFM: i64 = 1200
65const K_RDG_RHO_G_M3: i64 = 1200 // same number as the airflow above, unrelated quantity
66const K_RDG_ELEC_W: i64 = 3000
67const K_RH_IMPOSSIBLE_pm: i64 = 1500 // above 1000 per-mille is impossible -> must read IMPLAUSIBLE
70const K_FDD_TARGET_SUPERHEAT_mC: i64 = 8333
71const K_FDD_SUPERHEAT_BAND_mC: i64 = 2778
72const K_FDD_TARGET_SUBCOOL_mC: i64 = 5556
73const K_FDD_SPLIT_CEILING_mC: i64 = 13889
74const K_FDD_COND_CEILING_mC: i64 = 25000 // same number as the 25 C reference above, unrelated quantity
77const K_FDD_SUPERHEAT_HIGH_mC: i64 = 17000
78const K_FDD_SUBCOOL_LOW_mC: i64 = 1500 // same number as the impossible RH above, unrelated quantity
79const K_FDD_SUCTION_SAT_mC: i64 = 5000
80const K_FDD_EVAP_SPLIT_mC: i64 = 11000
81const K_FDD_COND_OVER_AMBIENT_mC: i64 = 15000
82const K_FDD_SUPERHEAT_LOW_mC: i64 = 6000
83const K_FDD_SUBCOOL_HIGH_mC: i64 = 12000 // same number as the supply temp above, unrelated quantity
84const K_FDD_FREEZE_SUCTION_mC: i64 = 2000

functions

89func w_psychro() -> i64
97func w_metrics() -> i64
105func w_drift() -> i64
111func w_liarkill() -> i64
called by 1: main calls 1: nx_acv_verify
140func w_independence() -> i64
called by 1: main calls 1: nx_acv_verify
167func w_fdd() -> i64
called by 1: main calls 1: nx_ac_fdd_analyze
206func w_negctl() -> i64
called by 1: main calls 1: nx_psy_psat_pa
212func row(status: *u8, cap: *u8, ev: *u8) -> i64
called by 1: main calls 1: print
222func main() -> i64