feat(doctor): battery health readout (#80)
Some checks failed
Check / eval (push) Has been cancelled

Report-only cycle_count + retained capacity (charge_* or energy_*) as
% of design on system batteries; soft warn below 70% of design; skip
when attrs missing. NOMARCHY_POWER_SUPPLY_ROOT for the checks.doctor
fixture (test_power has no cycle/design attrs).

Verified: V2 — nix flake check --no-build; checks.doctor green (fake
BAT0 cycles/% + Device-scope ignore); local BAT0 smoke (energy_*).
This commit is contained in:
Bernardo Magri
2026-07-11 10:06:13 +01:00
parent 3132ba5ac8
commit 71786bda6b
7 changed files with 114 additions and 16 deletions

View File

@@ -55,11 +55,6 @@ runtime-computed `resume_offset` into the boot cmdline, and the dev box runs
exactly this layout (`/proc/cmdline` verified) but isn't Nomarchy. Steps in
HARDWARE-QUEUE. Close #76 on PASS.
### 80. Battery health readout (`VISION § C`)
Report-only: `cycle_count` + `charge_full`/`charge_full_design` % in a
doctor battery-health line (and optionally the Power menu). sysfs-gated
so desktops/VMs skip it. Extend checks.doctor with a faked sysfs battery.
### 81. First-boot welcome card (`VISION § B`)
One dismissible "you're set" toast on the first session (SUPER+M menu,
SUPER+T themes, SUPER+? keys, network pointer) — a notification, **not**
@@ -145,9 +140,9 @@ high-ROI, etc.) live in the journal + ROADMAP — not here.*
2026-07-10). Keep #59 commented install guidance; no
`nomarchy.hardware.nvidia.*` until a hybrid maintainer + queue.
_(First-boot card, generation readability, battery health, pre-activate
flag, dock life, hall of fame → promoted to **NEXT #80#85**,
Bernardo 2026-07-11.)_
_(#80 battery health shipped 2026-07-11. Remaining promoted: first-boot
card, generation readability, pre-activate flag, dock life, hall of
fame → **NEXT #81#85**.)_
### v1.0 pointer

View File

@@ -19,6 +19,21 @@ Template:
---
## 2026-07-11 — #80 doctor battery health readout
- **Task:** NEXT #80 — battery health in `nomarchy-doctor` (`VISION § C`).
- **Did:** Doctor row: `cycle_count` + retained capacity
(`charge_full`/`design` or `energy_*`) as `% of design`; system
batteries only; soft warn <70% design; skip when attrs absent.
`NOMARCHY_POWER_SUPPLY_ROOT` for the VM fixture. Extended
`checks.doctor` (fake BAT0 + Device-scope MOUSE0 ignore). HARDWARE §10,
ROADMAP ✓, VISION ✓; closed #80.
- **Verified:** **V2**`nix flake check --no-build`; `checks.doctor`
green; local smoke on real BAT0 (342 cycles, 81% via energy_*) + fixture.
- **Pending:** Power-menu surface left optional/out of scope (doctor is
the product surface for report-only health).
- **Next suggestion:** #81 first-boot welcome card (highest product ROI)
or #85 docs-only hall of fame.
## 2026-07-11 — Triage: VISION-gap PROPOSED → NEXT #80#85 (Bernardo)
- **Task:** Bernardo promoted five of the six fresh VISION-gap pitches
(all but the wallpapers split, which stays LATER).