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
Pre-flight confirmation now shown only when Python3/CLT is missing. prompt_yn adds an osascript GUI fallback via launchctl asuser for Jamf Self Service / launchd sessions (5-min timeout → auto-continue so policies never hang).
Fix
poll_watch could freeze when cfprefsd hung on a domain (parallel flush → unbounded wait). Added a 3s watchdog that SIGTERM/SIGKILLs stragglers so the loop always advances.
Note
Reworded the "new top-level key" NOTE: parent dict must exist before Set, so Add commands must run in order.
Noise
Add *TimeStamp* to global timestamp noise — zsh glob case sensitivity made *Timestamp* miss camelCase like SuspendHelperActivityTimeStamp.
com.apple.CharacterPicker: filter State (per-app emoji picker UI keyed by bundle ID).
com.apple.wifi.WiFiAgent: filter UserDismissedLimitedNetworkFirstJoins (per-SSID "don't show again" bookkeeping).
Exclude com.apple.CloudSubscriptionFeatures* (iCloud+ geo cache with UUID-keyed binary entries — caused multi-second pauses in show_plist_diff on each cache refresh).
CI
validate.yml: drop bash -n prefwatch.sh — script is #!/bin/zsh and uses zsh-only constructs (*(N) glob qualifier failed under bash). zsh check on prefwatch.sh + bash check on release.sh are kept.