Add basic rebase PR behaviour#5376
Merged
premun merged 10 commits intodotnet:mainfrom Oct 17, 2025
Merged
Conversation
When a feature flag is set for a subscription and a conflict is detected, drops a comment asking user to resolve the conflict locally dotnet#5313
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR adds basic rebase pull request behavior for dependency flow operations. When a feature flag is enabled for a subscription and conflicts are detected during code flow, the system now requests manual conflict resolution instead of allowing conflicted PRs to proceed automatically.
Key changes:
- Implements rebase strategy feature flag support for subscriptions
- Adds manual conflict resolution workflow with helpful user guidance
- Refactors pull request creation/update logic to handle conflict scenarios better
Reviewed Changes
Copilot reviewed 8 out of 9 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
PullRequestUpdater.cs |
Core logic for rebase strategy implementation, conflict detection, and manual resolution workflow |
PullRequestCommentBuilder.cs |
New comment templates for manual conflict resolution guidance and improved notification handling |
PullRequestCommenter.cs |
Minor formatting improvements for help text and comment processing |
NonBatchedPullRequestUpdater.cs |
Constructor updated to inject feature flag service dependency |
BatchedPullRequestUpdater.cs |
Constructor updated to inject feature flag service dependency |
UpdaterTests.cs |
Test setup enhanced with feature flag service mock |
GitRepoUrlUtils.cs |
Improved error handling and fallback logic for repository URL parsing |
ScenarioTests_CodeFlowConflicts.cs |
Test data simplified for conflict detection scenarios |
Comments suppressed due to low confidence (1)
src/ProductConstructionService/ProductConstructionService.DependencyFlow/PullRequestCommentBuilder.cs:1
- [nitpick] This fallback logic for parsing repository names is complex and hard to understand. Consider extracting this into a separate method with a descriptive name like
ExtractRepoNameFromUriAsFallbackand add a comment explaining the logic.
// Licensed to the .NET Foundation under one or more agreements.
Co-authored-by: Copilot <[email protected]>
premun
commented
Oct 15, 2025
premun
commented
Oct 15, 2025
premun
commented
Oct 15, 2025
dkurepa
reviewed
Oct 15, 2025
adamzip
reviewed
Oct 16, 2025
Contributor
adamzip
left a comment
There was a problem hiding this comment.
Some questions and also a few nits, feel free to implement them or discard them
premun
commented
Oct 16, 2025
dkurepa
approved these changes
Oct 17, 2025
premun
added a commit
to premun/arcade-services
that referenced
this pull request
Nov 10, 2025
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.
When a feature flag is set for a subscription and a conflict is detected, drops a comment asking user to resolve the conflict locally.
Example commit: maestro-auth-test/dotnet#203 (comment)
#5313