fix(daemon): make terminal notification delivery retryable#852
Merged
huangzesen merged 1 commit intoJul 11, 2026
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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
terminal_notifieda post-publication receipt instead of a pre-publication claimWhy
A read-only machine-wide audit correlated 6,763 daemon manifests with 19 owning-parent event logs (4.761 GB). It found two compatible terminal runs where
terminal_notified=truewas persisted but no matchingsystem_notification_publishedevent existed. The source path explained the failure: it persisted the claim first, then swallowed enqueue errors without rollback or retry.The same audit found a strict post-publication missed-wake lower bound of zero. This PR therefore fixes the publication receipt/retry boundary instead of adding another public wake toggle.
Rollout safety
terminal_notified is Falseterminal_notified=truerecords remain conservativesystem.jsonwindow; after dismissal/eviction, recovery may safely republish rather than record false successValidation
578 passed, 1 warning— alltests/test_daemon*.pyplus every direct system-notification caller suitepy_compileon touched runtime modulesgit diff --checkCoordination
waiting_input; that state is non-terminal and remains outside this terminal receipt path.