# v0.8 — Power: battery + sleep > Part of the [Typoena macro plan](macroplan.md). Requirements and targets: > [qfd.md](qfd.md). Load-bearing decisions: [adr.md](adr.md). **Status:** not started. - [ ] Measure idle / typing / push current draw on bench - [ ] 18650 + IP5306 charge board, soft power switch - [ ] Per-sync Wi-Fi teardown — refactor `git_sync`'s modem ownership so the radio de-inits after each git op. Today it comes up lazily on the first op and stays associated for the rest of the session (~15–20 mAh/hr); TLS session resumption (v0.7) already makes the fresh-connect path cheap (2.4 s vs 4.0 s). Prerequisite for both sleep modes. Analysis: [tradeoff-curves/wifi-auto-sync.md](tradeoff-curves/wifi-auto-sync.md). - [ ] Light sleep on idle > 30 s (keyboard interrupt wakes) - [ ] Deep sleep on lid close (reed switch); restore cursor + buffer - [ ] `auto_sync` runtime — the opportunistic, rate-limited push behind the v0.5 `.typoena.toml` key (re-homed here 2026-07-14; v0.7 closed with manual `:gl`/`:gp` only). Push when already awake + dirty (coalesced into the idle-pause, ≤ once per `auto_sync`), push once on the way into sleep if dirty, **never wake from deep sleep purely to sync**; min clamp ~2 min. A clean tick is radio-free via the dirty journal. Policy + curve: [tradeoff-curves/wifi-auto-sync.md](tradeoff-curves/wifi-auto-sync.md). - [ ] Battery indicator in the side panel