Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: dotnet/arcade-services
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: c60155ef2b
Choose a base ref
...
head repository: dotnet/arcade-services
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: ba3632a46c
Choose a head ref
  • 10 commits
  • 10 files changed
  • 6 contributors

Commits on Oct 8, 2025

  1. Fix darc update-subscription to error when immutable fields are chang…

    …ed (#5348)
    
    ## Problem
    
    When updating a subscription using `darc update-subscription` with the
    popup editor, changes to immutable fields were silently ignored. The
    command would report success, but fields like `TargetBranch`,
    `TargetRepository`, and `SourceEnabled` would not be updated, leading to
    user confusion.
    
    As noted in the documentation, these fields cannot be modified because
    of how Maestro++ tracks pull requests, but the tool was not validating
    or enforcing this restriction.
    
    **Example of the problem:**
    ```bash
    > darc update-subscription --id 58cbbaad-a57e-4327-865a-609fa1c10968
    # User changes target branch in the popup from 'main' to 'dev'
    Successfully updated subscription with id '58cbbaad-a57e-4327-865a-609fa1c10968'.
    # But the target branch is still 'main' - change was silently ignored
    ```
    
    ## Solution
    
    Added validation in `UpdateSubscriptionOperation` after popup values are
    extracted to detect and reject changes to immutable fields:
    - **Target Repository URL** - The repository receiving updates
    - **Target Branch** - The branch receiving updates
    - **Source Enabled** - Whether the subscription uses source-enabled
    (VMR) flow
    
    When users attempt to modify any of these fields, the operation now
    fails with a clear error message listing all immutable fields that were
    changed.
    
    **After this fix:**
    ```bash
    > darc update-subscription --id 58cbbaad-a57e-4327-865a-609fa1c10968
    # User changes target branch in the popup from 'main' to 'dev'
    The following immutable fields cannot be modified:
      - Target Branch (cannot be changed from 'main')
    ```
    
    ## Changes
    
    - **UpdateSubscriptionOperation.cs**: Added validation logic after popup
    values are extracted to compare against the original subscription and
    detect immutable field changes
    - **Darc.md**: Updated documentation to explicitly list all immutable
    fields and clarify that changes will result in an error
    
    ## Testing
    
    - All existing tests continue to pass (117 passed, 1 skipped)
    - Build succeeds with no warnings
    - Documentation updated to reflect the new behavior
    
    Fixes #4248
    
    Fixes #4725
    
    <!-- START COPILOT CODING AGENT SUFFIX -->
    
    
    
    <details>
    
    <summary>Original prompt</summary>
    
    > 
    > ----
    > 
    > *This section details on the original issue you should resolve*
    > 
    > <issue_title>darc update-subscription target branch doesn't work but
    also doesn't error</issue_title>
    > <issue_description>If I update a subscription's target branch, darc
    tells me that it successfully updated the subscription but the change is
    not respected:
    > 
    > > C:\git\arcade-services\tools\FlatFlowMigrationCli>darc
    update-subscription --id 58cbbaad-a57e-4327-865a-609fa1c10968
    > Successfully updated subscription with id
    '58cbbaad-a57e-4327-865a-609fa1c10968'.
    > 
    > If we can't update target branches, we should at least error out
    during the save.</issue_description>
    > 
    > ## Comments on the Issue (you are @copilot in this section)
    > 
    > <comments>
    > <comment_new><author>@dkurepa</author><body>
    > @ViktorHofer when this happened, did you use the `update-subscription`
    with the pop-up? </body></comment_new>
    > <comment_new><author>@ViktorHofer</author><body>
    > Yes. Pop-up in notepad on Windows.</body></comment_new>
    > <comment_new><author>@dkurepa</author><body>
    > Ah I see, thanks</body></comment_new>
    > <comment_new><author>@dkurepa</author><body>
    > The best thing to do here is probably to error out.
    > Ideally we wouldn't do this just for the target branch, but for other
    non mutable fields:
    >  - Id
    >  - targetRepository
    >  - target branch
    >  - source enabled
    > 
    > So after a popup is closed, we'd check if any of these are changed,
    and error out with all of them</body></comment_new>
    > </comments>
    > 
    
    
    </details>
    Fixes #4725
    
    <!-- START COPILOT CODING AGENT TIPS -->
    ---
    
    💬 Share your feedback on Copilot coding agent for the chance to win a
    $200 gift card! Click
    [here](https://survey3.medallia.com/?EAHeSx-AP01bZqG0Ld9QLQ) to start
    the survey.
    
    ---------
    
    Co-authored-by: copilot-swe-agent[bot] <[email protected]>
    Co-authored-by: dkurepa <[email protected]>
    Copilot and dkurepa authored Oct 8, 2025
    Configuration menu
    Copy the full SHA
    f1747a4 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f02f03a View commit details
    Browse the repository at this point in the history

Commits on Oct 10, 2025

  1. Don't open the darc popup if target-directory or source-directory are…

    … provided (#5357)
    
    #5220
    a small UX fix that makes updating subscriptions a better experience
    
    ---------
    
    Co-authored-by: Copilot <[email protected]>
    dkurepa and Copilot authored Oct 10, 2025
    Configuration menu
    Copy the full SHA
    a30f727 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0f1c878 View commit details
    Browse the repository at this point in the history

Commits on Oct 13, 2025

  1. Link PRs in Forward Flows (#5355)

    <!-- Link the GitHub or AzDO issue this pull request is associated with.
    Please copy and paste the full URL rather than using the
    dotnet/arcade-services# syntax -->
    #5263
    dkurepa authored Oct 13, 2025
    Configuration menu
    Copy the full SHA
    cb600e3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    82ac610 View commit details
    Browse the repository at this point in the history
  3. [automated] Merge branch 'production' => 'main' (#5368)

    Co-authored-by: Přemek Vysoký <[email protected]>
    premun and premun authored Oct 13, 2025
    Configuration menu
    Copy the full SHA
    9698614 View commit details
    Browse the repository at this point in the history
  4. Convert PullRequestBuilder.cs to UTF-8 (#5369)

    <!-- Link the GitHub or AzDO issue this pull request is associated with.
    Please copy and paste the full URL rather than using the
    dotnet/arcade-services# syntax -->
    #5269
    I opened another branch from this PR branch and created a PR in my fork,
    it looks like it worked
    dkurepa#28
    dkurepa authored Oct 13, 2025
    Configuration menu
    Copy the full SHA
    39bc6e6 View commit details
    Browse the repository at this point in the history

Commits on Oct 14, 2025

  1. Configuration menu
    Copy the full SHA
    a7b3821 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ba3632a View commit details
    Browse the repository at this point in the history
Loading