Part of the power-management roadmap in #36.
Goal
Make OpenVision battery- and thermal-aware: automatically prefer lower-power behavior as battery drops or the device heats up.
Why
There is currently no reading of battery level or thermal state anywhere in the app. This is the highest-impact new capability from the proposal for real all-day wear.
Scope (first pass)
Out of scope for this issue: the full set of named power profiles (All-Day/Balanced/Performance) — those can follow once the sensing + auto-downgrade primitives exist.
Pointers
OpenVision/Models/AppSettings.swift — add threshold settings
OpenVision/Views/VoiceAgent/VoiceAgentView.swift — gate live-video / snapshot decisions
Part of the power-management roadmap in #36.
Goal
Make OpenVision battery- and thermal-aware: automatically prefer lower-power behavior as battery drops or the device heats up.
Why
There is currently no reading of battery level or thermal state anywhere in the app. This is the highest-impact new capability from the proposal for real all-day wear.
Scope (first pass)
UIDevice.current.batteryLevel/.batteryStateandProcessInfo.processInfo.thermalStateOut of scope for this issue: the full set of named power profiles (All-Day/Balanced/Performance) — those can follow once the sensing + auto-downgrade primitives exist.
Pointers
OpenVision/Models/AppSettings.swift— add threshold settingsOpenVision/Views/VoiceAgent/VoiceAgentView.swift— gate live-video / snapshot decisions