Skip to content

FindDiskKiller 1.3.6

Choose a tag to compare

@jianyintang jianyintang released this 02 Aug 13:57
· 64 commits to main since this release

FindDiskKiller 1.3.6

This hotfix completes privileged tracing-helper recovery for upgrades from older
FindDiskKiller releases whose helper no longer satisfies the current XPC
code-signing requirement.

Fixes

  • Treat a code-signing-rejected legacy endpoint as an incompatible helper even
    when macOS blocks the connection before it can report a protocol version.
  • Continue from an unsuccessful in-place registration to a transactional helper
    replacement during the first automatic repair attempt for the current build.
  • Unregister the stale service, wait for its endpoint to disappear, register the
    helper embedded in the current signed app, and require a verified handshake
    before tracing starts.
  • Keep automatic recovery bounded to one replacement attempt per build while
    preserving explicit retry and actionable approval states.
  • Prevent fseventsd memory pressure by replacing whole-volume, per-file,
    no-defer subscriptions with bounded directory-level streams scoped to the
    locations currently shown in application file activity.
  • Bound every volume watcher to 512 requested directories and 512 queued
    changes, retain at most 4,096 recent changes in the app, and report paths
    beyond the observation budget as unavailable instead of creating unbounded
    work.
  • Use a two-second coalescing latency and lexical path normalization so
    polling does not trigger repeated filesystem symlink resolution.
  • Make privileged-helper maintenance commands flush their result and exit with
    an accurate status immediately, without entering the normal AppKit shutdown
    and history-flush path.

Release integrity

  • Build 128 passed the complete serial test suite, including the real-world XPC
    code-signing rejection path, helper replacement, legacy cleanup, reconnection,
    trace/update interlock, and localization tests.
  • The release build is universal, signed, notarized, Gatekeeper-validated, and
    Sparkle-signed before publication.