You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
NotchFlow drives WindowServer CPU to ~44% sustained; no lighter/low-power mode available #10
NotchFlow keeps WindowServer pinned at a sustained ~43-45% CPU while running, causing noticeable system-wide UI lag (menu bar dropdowns, general responsiveness). Quitting NotchFlow drops WindowServer CPU to 0% within seconds.
Environment
NotchFlow version: 0.1.0 (build 1)
macOS: 26.6 (build 25G72)
Arch: Apple Silicon (arm64)
Measurement
NotchFlow running normally (default settings, no config changes) alongside a handful of other menu-bar utilities (Stats, Ice, Jiggler, MeetingBar, Amphetamine — all measured under 1% CPU).
After ~2 hours of uptime, NotchFlow had accumulated ~10 minutes of CPU time (~7% CPU sustained) — clearly higher than the other menu-bar apps running concurrently.
Sampling WindowServer directly (top -l 1 -pid <WindowServer PID> -stats pid,command,cpu) while NotchFlow was running returned 43.2%, 44.5%, 45.3% across repeated samples.
Quit NotchFlow (osascript -e 'quit app "NotchFlow"'). Re-sampling WindowServer immediately after showed 0.0% CPU across four consecutive samples taken 3s apart.
Expected
Rendering an idle notch status overlay shouldn't require sustained heavy WindowServer load.
Additional notes
No settings/preferences UI exists in the app (it's an LSUIElement background app) and no lighter/low-power/reduced-motion toggle was found in the binary — it only reads the system's isLowPowerModeEnabled via ProcessInfo, it doesn't expose its own performance mode.
A "lite mode" (lower redraw/animation frequency, or auto-degrading when the system reports Low Power Mode) would likely fix this.
Update: the build I tested (0.1.0, build 1, ad-hoc signed locally on 2026-07-29 12:47) was very likely compiled from commit 5a87305 (2026-07-28, "Ask for Accessibility at the first jump, not at launch") — the last commit before that build timestamp — not from current main.
I checked the commit history up to current HEAD (7931f5f, 2026-08-07) and didn't find anything after 5a87305 touching notch rendering / animation / WindowServer / low-power handling, so I'd still expect this to reproduce on latest main. Flagging the exact base commit in case there's a fix in between that I missed, or in case you want a fresh measurement against a build from current HEAD before investigating further.
The permanently running eye timeline has been replaced with finite explicit animation schedules. Stable faces now render once, attention feedback is bounded, and Low Power Mode caps every animated burst. Five focused policy tests were added.
The macOS CI workflow completed successfully on commit f7f5342. A same-machine WindowServer A/B measurement is still useful as follow-up validation, but the unbounded idle redraw path is removed.
Closing this as completed; review and any follow-up remain tracked in #11.
Activity
ikentrock commentedon Aug 9, 2026
Update: the build I tested (
0.1.0, build1, ad-hoc signed locally on 2026-07-29 12:47) was very likely compiled from commit5a87305(2026-07-28, "Ask for Accessibility at the first jump, not at launch") — the last commit before that build timestamp — not from currentmain.I checked the commit history up to current HEAD (
7931f5f, 2026-08-07) and didn't find anything after5a87305touching notch rendering / animation / WindowServer / low-power handling, so I'd still expect this to reproduce on latestmain. Flagging the exact base commit in case there's a fix in between that I missed, or in case you want a fresh measurement against a build from current HEAD before investigating further.cloudstudio commentedon Aug 10, 2026
Implemented in #11.
The permanently running eye timeline has been replaced with finite explicit animation schedules. Stable faces now render once, attention feedback is bounded, and Low Power Mode caps every animated burst. Five focused policy tests were added.
The macOS CI workflow completed successfully on commit
f7f5342. A same-machine WindowServer A/B measurement is still useful as follow-up validation, but the unbounded idle redraw path is removed.Closing this as completed; review and any follow-up remain tracked in #11.