Skip to content

Conversation

@TravisEz13
Copy link
Member

@TravisEz13 TravisEz13 commented Nov 20, 2025

Backport of #26343 to release/v7.6

Dependencies

This PR depends on #26490 being merged first.

PR #26490 backports prerequisite changes that this PR builds upon. Please review and merge #26490 before merging this PR.


Triggered by @TravisEz13 on behalf of @daxian-dbw

Original CL Label: CL-General

/cc @PowerShell/powershell-maintainers

Impact

REQUIRED: Choose either Tooling Impact or Customer Impact (or both). At least one checkbox must be selected.

Tooling Impact

  • Required tooling change
  • Optional tooling change (include reasoning)

Customer Impact

  • Customer reported
  • Found internally

This makes the PSFeedbackProvider experimental feature stable by removing it from the experimental features list and removing the old suggestion framework. This is a customer-facing change as it affects how feedback/suggestions are presented to users in the console.

Regression

REQUIRED: Check exactly one box.

  • Yes
  • No

This is not a regression.

Testing

Original PR was tested on master branch. Backport verified by successfully resolving merge conflicts while preserving v7.6-specific experimental features, cherry-pick completed successfully, and 4 files changed with clean removal of deprecated code.

Risk

REQUIRED: Check exactly one box.

  • High
  • Medium
  • Low

This is a feature graduation that has been approved by PMs and maintainers. The PSFeedbackProvider feature has been tested as experimental and is now being made stable. The old suggestion framework removal is a cleanup of deprecated code. The conflicts were straightforward - preserving v7.6 experimental features while removing PSFeedbackProvider.

Merge Conflicts

Conflicts occurred in 2 files during cherry-pick:

src/System.Management.Automation/engine/ExperimentalFeature/ExperimentalFeature.cs

  • Conflict: Release branch v7.6 contains additional experimental features (PSNativeWindowsTildeExpansion, PSRedirectToVariable) not present in main
  • Resolution: Removed PSFeedbackProvider constant and registration as per the PR, while preserving v7.6-specific experimental features

src/System.Management.Automation/engine/hostifaces/HostUtilities.cs

  • Conflict: Old suggestion framework code that the PR removes still exists in v7.6
  • Resolution: Cleanly removed all deprecated suggestion framework methods (GetSuggestion and supporting code) as intended by the PR

Copilot AI review requested due to automatic review settings November 20, 2025 18:58
@TravisEz13 TravisEz13 added the CL-General Indicates that a PR should be marked as a general cmdlet change in the Change Log label Nov 20, 2025
@TravisEz13 TravisEz13 marked this pull request as draft November 20, 2025 18:59
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR backports the graduation of the PSFeedbackProvider experimental feature to stable status in the release/v7.6 branch. It removes the experimental feature flag and completely eliminates the legacy suggestion framework, making the extensible feedback provider system the default implementation for providing user suggestions in PowerShell.

Key Changes:

  • Removed PSFeedbackProvider from the experimental features list and associated constant
  • Eliminated the conditional check between feedback provider and legacy suggestion systems
  • Deleted the entire legacy suggestion framework including GetSuggestion methods, SuggestionMatchType enum, and related infrastructure

Reviewed Changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
src/System.Management.Automation/engine/ExperimentalFeature/ExperimentalFeature.cs Removed PSFeedbackProvider constant and its registration from the experimental features list while preserving v7.6-specific experimental features
src/Microsoft.PowerShell.ConsoleHost/host/msh/ConsoleHost.cs Removed experimental feature check and legacy EvaluateSuggestions method, now always using EvaluateFeedbacks
src/System.Management.Automation/engine/hostifaces/HostUtilities.cs Deleted legacy suggestion framework including GetSuggestion methods, SuggestionMatchType enum, and all supporting code
src/System.Management.Automation/resources/SuggestionStrings.resx Removed obsolete resource strings for legacy suggestion system

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@microsoft-github-policy-service microsoft-github-policy-service bot added the Waiting on Author The PR was reviewed and requires changes or comments from the author before being accept label Nov 24, 2025
@adityapatwardhan adityapatwardhan marked this pull request as ready for review December 5, 2025 19:14
@daxian-dbw daxian-dbw enabled auto-merge (squash) December 5, 2025 19:42
@daxian-dbw daxian-dbw merged commit 8f3b14c into PowerShell:release/v7.6 Dec 5, 2025
33 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CL-General Indicates that a PR should be marked as a general cmdlet change in the Change Log Waiting on Author The PR was reviewed and requires changes or comments from the author before being accept

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants