1.2.2 April 22, 2026 Latest
Added
  • Ask Insights (macOS 26 Tahoe only): New sidebar entry under Analytics lets you ask natural-language questions about your Mac's history — “How high did CPU go yesterday?”, “Which apps used the most energy today?”, “What’s been writing to disk?”, “Did Xcode use a lot of CPU?”. Runs entirely on-device via Apple Intelligence — nothing leaves your Mac. On older macOS versions the feature simply doesn’t appear; the rest of the app works as before. Not available in the App Store build.
  • Per-process activity history: MacPulse now remembers which apps were busy (CPU, memory, disk I/O, idle wake-ups, and a synthetic activity score) every 60 seconds, so questions like “which apps drained my battery yesterday?” actually get answered across the last 30 days — not just “right now.” 30-day retention with automatic rollup (minute → hourly → daily).
Fixed
  • Phantom disk-I/O spikes. IOKit disk counters could appear to jump backwards when a volume was mounted or unmounted, and the old delta path treated that as a huge valid reading — producing occasional bogus “103 GB/s” samples that poisoned averages and peaks in the History view. Counter regressions and any rate above 30 GB/s are now rejected as artifacts.
1.2.1 April 17, 2026
Fixed
  • "What's New" dialog could not be dismissed on version upgrade. After updating from 1.1.x to 1.2.0, the Continue button did nothing and Cmd+Q was blocked by the stuck sheet. Dismiss wiring is restored. If you are currently stuck on 1.2.0, force quit the app once (Dock → right-click → Force Quit) — on relaunch the dialog will not return and Sparkle will offer this update automatically.
1.2.0 April 17, 2026
Added
  • Insights History: New sidebar entry under Analytics showing every insight your Mac has produced, with 24h / 7d / 30d range, category, and severity filters. Insights were already persisted for 30 days — now you can actually browse them.
  • Quick Actions on insights: Each insight detail popover has one-click buttons for the right follow-up — Open Activity Monitor, Storage Settings, Energy Settings, Disk Utility, Network Settings, Display Settings. No more digging through System Settings.
  • Snooze: Right-click any insight on the Dashboard to hide it for 1 hour, 6 hours, or until tomorrow. Unlike Dismiss, the rule keeps running — it just stops showing until the timer is up.
  • Per-rule enable/disable: Settings → Insights now includes a collapsible list of every rule with a toggle. Turn off the ones you don't care about; Reset to Defaults clears the disabled set too.
  • Top Memory Consumers on Memory tab (Direct): The Memory detail view now lists the top 5 processes by resident memory, with columns for memory, percent of total RAM, and thread count. Updates every 10 seconds while the tab is visible.
  • SMART disk health rule (Direct): Surfaces a warning the moment any drive's SMART status flips from Verified to Failing, with a one-click Disk Utility shortcut.
  • Bluetooth reconnection churn rule (Direct): Detects devices that repeatedly connect and disconnect within an hour (5+ transitions = noteworthy, 10+ = warning) and names the worst-offending device — so you know which AirPod battery to check.
  • Process-aware insight messages: Memory and CPU insights now name the actual apps using the most resources — "Top memory users right now: Chrome (3.2 GB), Xcode (1.1 GB)" instead of generic "close unused apps" text. Direct build only; MAS falls back to the generic message.
Changed / Fixed
  • Dismissals persist across midnight. Previously, dismissing an insight near midnight could see it resurface at 12:01 AM because the dedup id contained the date. Dismissals now persist by rule id with a 24-hour TTL.
  • Notification throttle: the same warning no longer fires a duplicate macOS notification every 5 minutes while the condition persists — 24 hours per (rule, severity).
  • Hysteresis on CPU and Thermal rules. Metrics oscillating around the threshold no longer flip the warning on and off; rules now require a 3-sample consecutive streak in minute-level records before firing.
  • Network anomaly baseline floor. The rule now requires a baseline above 100 KB/s before comparing today's throughput — at very low baselines, a single browsing spike would produce misleadingly huge ratios.
  • Battery drain anomaly uses a median across per-interval rates instead of a global mean, so one short hot-GPU interval can't trigger a false alarm.
  • Insight suggestions no longer look like fake links. Suggestion text is now muted italic (card) / primary (popover) rather than blue — the clickable elements are the new Quick Actions buttons, which are obviously interactive.
1.1.9 April 16, 2026
Fixed
  • Insights readability: Long insight messages no longer appear truncated with no way to see the full text. Every insight row is now tappable and opens a popover with the full message, suggestion, and a new Details section explaining what was measured and likely causes. Text is selectable and a "Copy" button makes it easy to share with support.
  • Fan insights: Fan anomaly rules now include concrete diagnostic details — sample counts, peak temperature, thresholds, and next steps (e.g. SMC reset instructions, powermetrics cross-check command).
1.1.8 April 16, 2026
Added
  • Menu Bar Only Mode shortcut: New "hide dock" button in the menu bar popover and a Window menu command (⇧⌘M) to switch into menu-bar-only mode instantly — no more digging through Settings.
1.1.7 April 14, 2026
Added
  • Network: Cumulative download/upload traffic counters in the detail view and per-interface rows (lifetime since boot).
  • Auto-updates (direct build): Sparkle updates now install silently on next launch.
Fixed
  • Insights: Recommended action text now wraps vertically instead of being cut off with an ellipsis.
  • Menu bar popover: CPU/RAM/Disk mini gauges no longer show truncated percentages (e.g. "20....").
1.1.6 April 12, 2026
Fixed
  • MAS in-app purchase: Fixed critical bug where the purchase button was permanently disabled for users whose trial had expired. An async let cancellation issue prevented Product.products(for:) from completing, leaving the price unloaded and the button non-functional.
1.1.4 April 6, 2026
Fixed
  • Bug fixes
1.1.0 March 9, 2026
Smarter Insights Engine
  • Completely overhauled Insights Engine with pluggable rule architecture
  • 10 new insight rules: CPU user/system imbalance, recurring weekly patterns, fan speed anomalies, charging patterns, disk read I/O spikes, GPU memory pressure, GPU temperature warnings, daily network usage tracking, system overload detection, and heavy workload alerts
  • Actionable suggestions on every insight — tells you what to do, not just what's wrong
  • Category badges (Performance, Memory, Storage, Thermal, Power, Network, System) for at-a-glance grouping
  • Configurable thresholds in Settings > Insights
  • Insight history persisted to database with 30-day retention
  • Warning-level insights pushed as system notifications (opt-in)
  • Statistical anomaly detection using z-score analysis
  • Cross-module compound insights detect system-wide overload
  • Fanless Mac detection — no more false fan warnings on MacBook Air
Accessibility
  • VoiceOver support across all charts, gauges, meters, cards, and interactive elements
  • Accessibility labels, hints, and values throughout the app
Localization
  • Language picker in Settings (English, Spanish, French, German, Japanese, Simplified Chinese)
  • Localized UI strings throughout dashboard and menu bar
New Features
  • TipKit integration with contextual tips for export, history, performance, fan control, and menu bar
  • What's New sheet shown automatically after updates
  • App Intents / Siri Shortcuts support
  • Redesigned 5-page onboarding walkthrough
  • Privacy manifest (PrivacyInfo.xcprivacy) for App Store compliance
UI Polish
  • Native ContentUnavailableView for empty states
  • Animated memory composition bar segments
  • Smooth dashboard view transitions
  • Show All toggle for insights with more than 5 items
1.0.9.9 March 8, 2026
Fixed
  • Fix license wipe caused by UserDefaults key collision with macOS system keys (com.apple.* keys)
  • Hardening data moved to dedicated UserDefaults(suiteName:) to prevent collision
  • Legacy key migration validates format before migrating
  • Improved license reliability and data integrity
  • Fix flaky testCPUTimeOfDayPeakDetection by using dynamic peak hours
1.0.9.8 March 7, 2026
Fixed
  • Tighten battery drain insight: require 2-hour baseline, cap ratio at 5x to avoid false positives
  • Fix battery drain insight comparison logic
  • Fixed-width network speed display in menu bar to prevent layout jumps
1.0.9.4 March 6, 2026
Fixed
  • Fix FPS permission loop caused by CGRequestScreenCaptureAccess triggering infinite requests
  • Improved Screen Recording permission UX with clear permission-denied state
1.0.9 March 5, 2026
Changed
  • Replace CVDisplayLink FPS counter with ScreenCaptureKit for accurate display frame rate measurement
  • CVDisplayLink measured VSync rate (~122fps on 60Hz), not actual rendered frames
  • New SCK-based counter reports real frame delivery (~47fps idle, ~60fps gaming)
  • Labels changed to "Display FPS" for transparency
Added
  • Memory chart and summary stats (Avg/Max Memory) added to performance session views
1.0.8 March 4, 2026
Fixed
  • Fix P-core/E-core swap in per-core grid display
  • Fix dashboard window activation when opening from menu bar
  • Improve widget data reliability and refresh timing
  • Fix FPS averaging calculation
  • MAS branding: "System Insights" name for App Store (Apple rejected "MacPulse" under Guideline 5.2.5)
1.0.5 March 3, 2026
Fixed
  • Fix dashboard window not activating when opened from menu bar popover
  • Fix dock icon not persisting across launches
  • Fix widget extension discovery (re-register with LaunchServices on build number change)
  • Fix Time Machine hang during widget data writes
  • Fix thermal sensor numbering in detail view
1.0.3 March 2, 2026
Fixed
  • Fix CPU notification firing immediately on fresh installs due to 0% threshold default
1.0.2 March 1, 2026
Fixed
  • Fix help URL pointing to correct feedback repository
  • Fix thermal gauge missing degree symbol
  • Add Fahrenheit temperature unit toggle in Settings
1.0.1 February 28, 2026
Added
  • Privileged helper for SMC fan control (avoids requiring root for fan speed writes)
  • Per-app resource breakdown in top processes
  • Extended notification types: GPU sustained usage, GPU temperature, battery low charge, fan anomaly
  • Top processes dashboard card showing CPU and memory leaders
Changed
  • Build script updated for helper tool signing
1.0.0 February 25, 2026 Initial Release
MacPulse — Activity Monitor reimagined as a gorgeous, native SwiftUI dashboard with historical analytics and a menu bar companion.
Real-Time Monitoring
  • CPU — Per-core usage with P-core/E-core differentiation (Apple Silicon), user/system breakdown, frequency monitoring via IOReport
  • Memory — Usage breakdown (wired/compressed/cached/free), pressure level, swap monitoring
  • Network — Per-interface throughput (download/upload), private and public IP display
  • Disk — Volume usage, I/O rates (read/write), external disk detection with eject support
  • Thermal — SMC temperature sensors (CPU/GPU/ambient), fan RPM and percentage, power sensor readings (Direct only)
  • Battery — Charge percent, power source, time remaining, health, cycle count, temperature, Bluetooth device batteries (Direct only)
  • GPU — Utilization via IOKit IOAccelerator, memory via Metal, device name, temperature
Analytics & Insights
  • Historical trend charts with time range picker (1h / 24h / 7d / 30d)
  • CSV data export for all modules
  • Plain-English insights from rule-based InsightsEngine (23 rules covering all modules)
  • Performance session recording with 1-second polling and live charts (Direct only)
Menu Bar Companion
  • Configurable status bar: Icon Only, Text, Sparkline, or Text + Sparkline
  • Compact popover with CPU/Memory/Disk gauges, network speed, thermal, GPU, battery rows
  • Top 5 processes by CPU usage (Direct only)
  • Per-module toggle to customize popover content
Fan Control (Direct only)
  • Custom fan curves: Silent, Balanced, Performance, Full Speed, plus custom curve editor
  • Thermal watchdog forces max fans if CPU exceeds 95°C
  • Automatic fan reset on app quit
Settings
  • Configurable poll interval, launch at login, text size scaling
  • Per-type notification thresholds with cooldowns
  • Temperature unit toggle (Celsius/Fahrenheit)
Architecture
  • Native SwiftUI on macOS 14 Sonoma+, Universal Binary (Apple Silicon + Intel)
  • SQLite persistence via GRDB.swift with WAL mode and automatic retention policy
  • WidgetKit extension for home screen widgets
  • Sparkle auto-updates for direct distribution
  • 14-day trial with LemonSqueezy activation and Keychain-backed license storage