Conversation
…eNewComment parameter from TryPostOrUpdateStagingCommentAsync and update related calls. Introduce new methods for notifying deploy status updates, enhancing clarity and maintainability. Update GitHubApiClient to handle NotFound status on comment deletion. Improve deployment status resolution in background service by merging event and listing statuses.
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
Comment lifecycle simplified —
TryPostOrUpdateStagingCommentAsyncnow alwaysdeletes all prior marker comments and posts a fresh one. Removed
forceNewCommentparameter (was
truein every non-trivial call anyway). Added retry loop inDeleteAllMarkerCommentsAsyncso stale comments are reliably cleaned up.Immediate "queued" notifications — After enqueuing a deploy (new, redeploy,
re-sync, webhook trigger) the PR comment is updated right away via
TryNotifyDeployQueuedAsync, so contributors see progress instead of a stale"Deleted" or blank comment while the background worker starts.
Deploy status resolution — Events and listing APIs are now polled in parallel
and merged via
MergeEventAndListingStatus(failure wins, then deployed, elsepending). Removed the 5-minute "listing fallback" timer; listing is checked every
tick, eliminating the lag window.
Orphan service fix —
DeployBranchAsyncnow tears down existing PR servicesbefore creating new ones, preventing leftover Sliplane services when a
synchronizeevent triggers a fallback deploy alongside existing services.404 on comment delete treated as success —
DeleteIssueCommentAsyncno longerreturns
falsewhen the comment is already gone, removing spurious warnings.