Remove recursive tryAutoStartDaemon calls from handleStaleLock that
caused infinite recursion when daemon start lock cleanup looped.
The call chain was: acquireStartLock -> handleStaleLock ->
tryAutoStartDaemon -> acquireStartLock -> ... (unbounded)
Now handleStaleLock just cleans up stale locks and returns false,
letting the caller's bounded retry loop handle retries.
Co-authored-by: Nelson Melo <nmelo@users.noreply.github.com>