Repository navigation
Add support for empty selection sets - #10337
Merged
Merged
Conversation
Contributor
Patch coverage100.0% of changed lines covered (61/61)
Project coverage: 57.9% (288050/497731 lines) |
Contributor
There was a problem hiding this comment.
🟡 Changes recommended
There are a few correctness/quality issues to address in the changed content (notably docs scope and a snapshot file BOM) before this can be safely approved.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
This PR introduces an opt-in capability to allow empty selection sets ({ }) in HotChocolate (and Fusion gateway) across validation, execution, cost analysis, and persisted operation scenarios, while keeping subscription root constraints enforced.
Changes:
- Adds
EnableEmptySelectionSetsoption and wires it into document validation (Core + Fusion) and schema options cloning. - Updates validation rules and tests/snapshots to accept empty selection sets where enabled, and to keep subscription single-root-field enforcement.
- Extends cost analysis and persisted operations tests to cover empty selection-set behavior.
File summaries
| File | Description |
|---|---|
| website/content/docs/hotchocolate/server/options.md | Documents the new schema option in the options reference. |
| src/HotChocolate/PersistedOperations/test/PersistedOperations.InMemory.Tests/IntegrationTests.cs | Adds integration tests for persisted operations with empty selection sets when validation is bypassed. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/FusionOptionsTests.cs | Updates Fusion options cloning snapshot to include EnableEmptySelectionSets. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/EmptySelectionSetTests.cs | Adds Fusion gateway execution coverage (enabled vs disabled) for multiple empty-selection-set shapes. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_UseValidationOverrideWithoutSourceRequests_When_EmptySelectionSetsAreEnabled_ValidationOverride.snap | Snapshot for validation override behavior in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptySubscription_Enabled.snap | Snapshot for empty subscription behavior (enabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptySubscription_Disabled.snap | Snapshot for empty subscription behavior (disabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyQuery_Enabled.snap | Snapshot for empty query behavior (enabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyQuery_Disabled.snap | Snapshot for empty query behavior (disabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedFragmentBesideIncludedFieldTrue_Enabled.snap | Snapshot for fragment-adjacent include=true behavior (enabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedFragmentBesideIncludedFieldTrue_Disabled.snap | Snapshot for fragment-adjacent include=true behavior (disabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedFragmentBesideIncludedFieldFalse_Enabled.snap | Snapshot for fragment-adjacent include=false behavior (enabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedFragmentBesideIncludedFieldFalse_Disabled.snap | Snapshot for fragment-adjacent include=false behavior (disabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedFragment_Enabled.snap | Snapshot for empty named fragment behavior (enabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedFragment_Disabled.snap | Snapshot for empty named fragment behavior (disabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyMutation_Enabled.snap | Snapshot for empty mutation behavior (enabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyMutation_Disabled.snap | Snapshot for empty mutation behavior (disabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentUntyped_Enabled.snap | Snapshot for untyped inline fragment behavior (enabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentUntyped_Disabled.snap | Snapshot for untyped inline fragment behavior (disabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentOnAbstract_Enabled.snap | Snapshot for abstract inline fragment behavior (enabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentOnAbstract_Disabled.snap | Snapshot for abstract inline fragment behavior (disabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentBesideIncludedFieldTrue_Enabled.snap | Snapshot for inline fragment adjacent to include=true (enabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentBesideIncludedFieldTrue_Disabled.snap | Snapshot for inline fragment adjacent to include=true (disabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentBesideIncludedFieldFalse_Enabled.snap | Snapshot for inline fragment adjacent to include=false (enabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentBesideIncludedFieldFalse_Disabled.snap | Snapshot for inline fragment adjacent to include=false (disabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragment_Enabled.snap | Snapshot for typed inline fragment behavior (enabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragment_Disabled.snap | Snapshot for typed inline fragment behavior (disabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyCompositeField_Enabled.snap | Snapshot for empty composite field behavior (enabled) in Fusion. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/snapshots/EmptySelectionSetTests.ExecuteAsync_Should_MatchSnapshot_When_EmptySelectionSet_EmptyCompositeField_Disabled.snap | Snapshot for empty composite field behavior (disabled) in Fusion. |
| src/HotChocolate/Fusion/src/Fusion.Execution/Execution/FusionRequestExecutorManager.cs | Wires Fusion option into the document validator options. |
| src/HotChocolate/Fusion/src/Fusion.Execution/Execution/FusionOptions.cs | Adds EnableEmptySelectionSets option to Fusion options. |
| src/HotChocolate/CostAnalysis/test/CostAnalysis.Tests/HotChocolate.CostAnalysis.Tests.csproj | Adds persisted-operations in-memory project reference needed by new tests. |
| src/HotChocolate/CostAnalysis/test/CostAnalysis.Tests/CostAnalyzerEmptySelectionSetTests.cs | Adds cost analysis + persisted operations coverage for empty selection sets. |
| src/HotChocolate/CostAnalysis/src/CostAnalysis/CostAnalyzer.cs | Adjusts cost analysis bookkeeping to handle missing/empty selection set costs. |
| src/HotChocolate/Core/test/Validation.Tests/SubscriptionSingleRootFieldRuleTests.cs | Adds tests ensuring subscriptions without a root field report the single-root-field error. |
| src/HotChocolate/Core/test/Validation.Tests/LeafFieldSelectionsRuleTests.cs | Adds tests for empty selection sets when enabled and new fragment-empty behavior. |
| src/HotChocolate/Core/test/Validation.Tests/DocumentValidatorTests.cs | Adds validator tests for empty query/subscription behavior with the new option. |
| src/HotChocolate/Core/test/Validation.Tests/snapshots/SubscriptionSingleRootFieldRuleTests.SubscriptionWithoutRootField_Should_ReportSingleRootFieldError.snap | Snapshot for subscription without root field (direct). |
| src/HotChocolate/Core/test/Validation.Tests/snapshots/SubscriptionSingleRootFieldRuleTests.SubscriptionWithoutRootField_Should_ReportSingleRootFieldError_WhenUsingUntypedInlineFragment.snap | Snapshot for subscription without root field (untyped inline fragment). |
| src/HotChocolate/Core/test/Validation.Tests/snapshots/SubscriptionSingleRootFieldRuleTests.SubscriptionWithoutRootField_Should_ReportSingleRootFieldError_WhenUsingTypedInlineFragment.snap | Snapshot for subscription without root field (typed inline fragment). |
| src/HotChocolate/Core/test/Validation.Tests/snapshots/SubscriptionSingleRootFieldRuleTests.SubscriptionWithoutRootField_Should_ReportSingleRootFieldError_WhenUsingFragmentSpread.snap | Snapshot for subscription without root field (fragment spread). |
| src/HotChocolate/Core/test/Validation.Tests/snapshots/LeafFieldSelectionsRuleTests.Validate_Should_ReportError_When_UntypedInlineFragmentIsEmpty.snap | Snapshot for empty untyped inline fragment error (disabled). |
| src/HotChocolate/Core/test/Validation.Tests/snapshots/LeafFieldSelectionsRuleTests.Validate_Should_ReportError_When_TypedInlineFragmentIsEmpty.snap | Snapshot for empty typed inline fragment error (disabled). |
| src/HotChocolate/Core/test/Validation.Tests/snapshots/LeafFieldSelectionsRuleTests.Validate_Should_ReportError_When_NamedFragmentIsEmpty.snap | Snapshot for empty named fragment error (disabled). |
| src/HotChocolate/Core/test/Validation.Tests/snapshots/LeafFieldSelectionsRuleTests.Validate_Should_ReportError_When_InlineFragmentIsEmptyInsideValidSelection.snap | Snapshot for empty inline fragment within otherwise valid selection (disabled). |
| src/HotChocolate/Core/test/Validation.Tests/snapshots/DocumentValidatorTests.EmptySubscription_Should_ReportRootSelectionAndSingleRootFieldErrors.snap | Snapshot for combined empty-subscription validation errors. |
| src/HotChocolate/Core/test/Types.Tests/snapshots/SchemaOptionsTests.FromOptions_Should_CopyEveryOption_When_OptionsAreConfigured.snap | Extends schema options clone snapshot with EnableEmptySelectionSets. |
| src/HotChocolate/Core/test/Execution.Tests/Processing/OperationCompilerTests.cs | Renames/adjusts compiler test coverage around empty root selection sets and removes older empty-selection snapshots. |
| src/HotChocolate/Core/test/Execution.Tests/Processing/snapshots/OperationCompilerTests.InlineFragment_SelectionsSet_Empty.snap | Removes obsolete snapshot (inline fragment empty selection set). |
| src/HotChocolate/Core/test/Execution.Tests/Processing/snapshots/OperationCompilerTests.FragmentSpread_SelectionsSet_Empty.snap | Removes obsolete snapshot (fragment spread empty selection set). |
| src/HotChocolate/Core/test/Execution.Tests/Processing/snapshots/OperationCompilerTests.CompositeType_SelectionsSet_Empty.snap | Removes obsolete snapshot (composite type empty selection set). |
| src/HotChocolate/Core/test/Execution.Tests/Processing/snapshots/OperationCompilerTests.Compile_Should_CreateOperationWithEmptySelectionSet_When_RootSelectionSetIsEmpty.snap | Adds new snapshot for compiled empty root selection set. |
| src/HotChocolate/Core/test/Execution.Tests/EmptySelectionSetExecutionTests.cs | Adds end-to-end execution tests (enabled vs disabled) for empty selection set shapes. |
| src/HotChocolate/Core/test/Execution.Tests/DependencyInjection/RequestExecutorBuilderExtensions_SchemaOptionsTests.cs | Adds DI tests ensuring the schema option enables/disables execution and can be overridden in validation. |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptySubscription_Enabled.snap | Snapshot for empty subscription execution (enabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptySubscription_Disabled.snap | Snapshot for empty subscription execution (disabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyQuery_Enabled.snap | Snapshot for empty query execution (enabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyQuery_Disabled.snap | Snapshot for empty query execution (disabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedQuery_Enabled.snap | Snapshot for empty named query execution (enabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedQuery_Disabled.snap | Snapshot for empty named query execution (disabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedFragmentBesideIncludedField_IncludeTrue_Enabled.snap | Snapshot for fragment-adjacent include=true execution (enabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedFragmentBesideIncludedField_IncludeTrue_Disabled.snap | Snapshot for fragment-adjacent include=true execution (disabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedFragmentBesideIncludedField_IncludeFalse_Enabled.snap | Snapshot for fragment-adjacent include=false execution (enabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedFragmentBesideIncludedField_IncludeFalse_Disabled.snap | Snapshot for fragment-adjacent include=false execution (disabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedFragment_Enabled.snap | Snapshot for empty named fragment execution (enabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyNamedFragment_Disabled.snap | Snapshot for empty named fragment execution (disabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyMutation_Enabled.snap | Snapshot for empty mutation execution (enabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyMutation_Disabled.snap | Snapshot for empty mutation execution (disabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyListItems_Enabled.snap | Snapshot for empty selection set on list items execution (enabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyListItems_Disabled.snap | Snapshot for empty selection set on list items execution (disabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentUntyped_Enabled.snap | Snapshot for untyped inline fragment execution (enabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentUntyped_Disabled.snap | Snapshot for untyped inline fragment execution (disabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentBesideIncludedField_IncludeTrue_Enabled.snap | Snapshot for inline fragment adjacent to include=true execution (enabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentBesideIncludedField_IncludeTrue_Disabled.snap | Snapshot for inline fragment adjacent to include=true execution (disabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentBesideIncludedField_IncludeFalse_Enabled.snap | Snapshot for inline fragment adjacent to include=false execution (enabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragmentBesideIncludedField_IncludeFalse_Disabled.snap | Snapshot for inline fragment adjacent to include=false execution (disabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragment_Enabled.snap | Snapshot for typed inline fragment execution (enabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyInlineFragment_Disabled.snap | Snapshot for typed inline fragment execution (disabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyCompositeField_Enabled.snap | Snapshot for empty composite field execution (enabled). |
| src/HotChocolate/Core/test/Execution.Tests/snapshots/EmptySelectionSetExecutionTests.Execute_Should_MatchSnapshot_When_EmptySelectionSet_EmptyCompositeField_Disabled.snap | Snapshot for empty composite field execution (disabled). |
| src/HotChocolate/Core/src/Validation/Rules/OperationVisitor.cs | Tightens subscription single-root-field validation to require exactly one root field (including empty selection sets). |
| src/HotChocolate/Core/src/Validation/Rules/LeafFieldSelectionsRule.cs | Implements opt-in empty selection-set behavior (roots/composites/fragments), while keeping subscriptions restricted. |
| src/HotChocolate/Core/src/Validation/Properties/Resources.resx | Adds a new validation error message for empty fragment selection sets. |
| src/HotChocolate/Core/src/Validation/Properties/Resources.Designer.cs | Generates accessor for the new fragment selection-set resource string. |
| src/HotChocolate/Core/src/Validation/Options/ValidationOptions.cs | Adds EnableEmptySelectionSets to validator options. |
| src/HotChocolate/Core/src/Validation/Extensions/ValidationBuilderExtensions.cs | Wires validator options into rule construction for LeafFieldSelectionsRule. |
| src/HotChocolate/Core/src/Validation/ErrorHelper.cs | Adds NoSelectionOnFragment error construction helper. |
| src/HotChocolate/Core/src/Types/SchemaOptions.cs | Adds schema option and ensures it is copied in FromOptions. |
| src/HotChocolate/Core/src/Types/IReadOnlySchemaOptions.cs | Adds read-only schema option contract for EnableEmptySelectionSets. |
| src/HotChocolate/Core/src/Types/Execution/RequestExecutorManager.cs | Ensures the document validator is configured with the schema’s EnableEmptySelectionSets option. |
Review details
Files not reviewed (1)
- src/HotChocolate/Core/src/Validation/Properties/Resources.Designer.cs: Generated file
- Files reviewed: 88/90 changed files
- Comments generated: 2
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
This was referenced Oct 25, 2026
Merged
This was referenced Nov 1, 2026
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.
No description provided.