fix: skip notification when background tasks are still running #1249
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
hasPendingBackgroundTaskscallback toSessionNotificationConfiginterfaceindex.tsto usebackgroundManager.getRunningTasks()Problem
Notifications fire when a background agent completes, even if other background agents are still running. This happens because:
notifyParentSession()which prompts the parent sessionsession.idleevent fires for the parent (main) sessionSolution
Add a new optional callback
hasPendingBackgroundTasksto theSessionNotificationConfigthat is checked before sending a notification. WhenbackgroundManager.getRunningTasks().length > 0, the notification is skipped.This ensures notifications only fire when the session is truly idle (no background tasks running and waiting for user input).
Testing
Built and tested locally. The fix correctly skips notifications when background tasks are still running.
Summary by cubic
Prevented session notifications from firing while any background tasks are still running. Notifications now trigger only when the session is truly idle.
Written for commit 7b3b9ab. Summary will update on new commits.