[package] name = "mesh-meter" version.workspace = true edition.workspace = true license.workspace = true repository.workspace = true description = "Mesh — the energy meter window around served work. A small Meter trait + an always-available load estimator, with an optional bridge to the family's honest hardware meter (RAPL / NVML / Apple) behind the `hw-meter` feature (SPEC §4)." [dependencies] mesh-schema = { workspace = true } jouleclaw-energy = { workspace = true, optional = true } [features] default = [] # Bridge `Session` onto the family's hardware-backed meter. Off by default so # the foundation stays OS-neutral and the default build pulls no extra tree. hw-meter = ["dep:jouleclaw-energy"] # Convenience: enable the platform backend most likely to be present. hw-meter-rapl = ["hw-meter", "jouleclaw-energy/rapl"] hw-meter-nvml = ["hw-meter", "jouleclaw-energy/nvml"] # Apple: IOReport where its CPU rail is live, else the Mac's whole-machine power # from the SMC (ModelBased; spans shorter than its 2 s floor are estimates). hw-meter-apple = ["hw-meter", "jouleclaw-energy/ioreport", "jouleclaw-energy/smc"] [lints] workspace = true