fix(reconcile): fix race condition breaking auto-resume edge detection#26
Merged
fix(reconcile): fix race condition breaking auto-resume edge detection#26
Conversation
PR watcher was updating prChecksStatus in DB before enqueueing reconcile, so by the time the reconciler ran, prev.checks already equaled the new status and the edge transition was never detected. - Remove prChecksStatus/prReviewStatus/prState updates from pr-watcher - Add patchPrStatusFields() helper to executor, called after edge-triggered actions (resumeAgent, launchReview, PR-related transitions) - Reconciler now correctly detects edges: reads old value from DB, compares to fresh GitHub status, fires action, then patches DB
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.
PR watcher was updating prChecksStatus in DB before enqueueing reconcile, so by the time the reconciler ran, prev.checks already equaled the new status and the edge transition was never detected.