Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support - #132176

Merged
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com
Aug 12, 2026
Merged

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support#132176
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com

Conversation

CopilotAI commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

GcRestrictedCalloutReversePInvoke fails under stress runs because ComWrappers.RegisterForTrackerSupport throws PlatformNotSupportedException under AnyGCStress/AnyJitStress configurations (introduced by #130459), and the test inherently depends on background GC/multithreading.

Changes

  • Added [ActiveIssue] attributes disabling the test under AnyGCStress and AnyJitStress coreclr configurations, via CoreClrConfigurationDetection.IsGCStress and CoreClrConfigurationDetection.IsAnyJitStress.
  • Replaced [Fact] with [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))] so the test only runs where multithreading is supported.

CopilotAI lite review requested due to automatic review settings August 11, 2026 22:48

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot wasn't able to review any files in this pull request.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
16 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

…ReversePInvoke test
Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 11, 2026 23:00
CopilotAI changed the title [WIP] Fix test failure in Interop/COM GcRestrictedCalloutReversePInvokeDisable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading supportAug 11, 2026
CopilotAI requested a review from jkoritzinskyAugust 11, 2026 23:00

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 1 comment.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/interop-contrib
See info in area-owners.md if you want to be subscribed.

@jkoritzinsky

Copy link
Copy Markdown
Member

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property in the class to use that composes the condition you need.

Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:16

CopilotAI commented Aug 12, 2026

Copy link
Copy Markdown
ContributorAuthor

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property ...

Addressed in 22a70bc: removed the ActiveIssue attributes and switched to a composed condition (IsSupportedConfiguration) used by ConditionalFact, which now requires multithreading support and excludes GC stress.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • IsSupportedConfiguration disables the test under GC stress, but it does not disable it under JIT stress modes even though the PR intent/title mention JIT stress. This means the test will still run (and potentially still hit the ComWrappers.RegisterForTrackerSupport PNSE) under DOTNET_JitStress* configurations.
 public static bool IsSupportedConfiguration =>
TestLibrary.PlatformDetection.IsMultithreadingSupported &&
!TestLibrary.CoreClrConfigurationDetection.IsGCStress;

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:18

  • The PR description says stress-mode disabling is done via [ActiveIssue] attributes and that [ConditionalFact] is only used to gate on multithreading support. The implementation here instead uses a combined IsSupportedConfiguration predicate on Program and does not add any [ActiveIssue] annotations. Please either update the PR description to match the actual approach, or adjust the attributes to match the described behavior (so the skip reason/issue tracking is accurate).
 [ConditionalFact(typeof(Program), nameof(IsSupportedConfiguration))]

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:45
@jkoritzinsky
jkoritzinsky marked this pull request as ready for review August 12, 2026 04:45
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).
13 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:14

  • PlatformDetection is referenced in the new [ConditionalFact], but this file doesn't import the TestLibrary namespace, so this likely won't compile (other tests that use PlatformDetection include using TestLibrary;).
 [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))]

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:15

  • The PR description/title mention disabling this test under both GC stress and JIT stress, but the current [SkipOnCoreClr] only skips AnyGCStress. If RegisterForTrackerSupport also throws under JIT stress, this will continue failing in those legs.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

CopilotAI review requested due to automatic review settings August 12, 2026 05:21
@jkoritzinsky
jkoritzinsky enabled auto-merge (squash) August 12, 2026 05:21

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (1)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • The PR description says this test should be disabled under both GC stress and any JIT stress modes, but the new SkipOnCoreClr attribute only skips RuntimeTestModes.AnyGCStress. This can leave the test enabled (and potentially failing) under AnyJitStress configurations.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

@jkotas

Copy link
Copy Markdown
Member

/ba-g Known issues #131924#132030

@jkoritzinsky
jkoritzinsky merged commit 1adc98b into mainAug 12, 2026
82 of 85 checks passed
@jkoritzinsky
jkoritzinsky deleted the copilot/test-failure-interop-com branch August 12, 2026 18:43
@dotnet-milestone-botdotnet-milestone-botBot added this to the 11.0-rc1 milestone Aug 13, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Test failure: Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke.cmd

4 participants

@jkoritzinsky@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support - #132176

Merged
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com
Aug 12, 2026
Merged

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support#132176
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com

Conversation

CopilotAI commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

GcRestrictedCalloutReversePInvoke fails under stress runs because ComWrappers.RegisterForTrackerSupport throws PlatformNotSupportedException under AnyGCStress/AnyJitStress configurations (introduced by #130459), and the test inherently depends on background GC/multithreading.

Changes

  • Added [ActiveIssue] attributes disabling the test under AnyGCStress and AnyJitStress coreclr configurations, via CoreClrConfigurationDetection.IsGCStress and CoreClrConfigurationDetection.IsAnyJitStress.
  • Replaced [Fact] with [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))] so the test only runs where multithreading is supported.

CopilotAI lite review requested due to automatic review settings August 11, 2026 22:48

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot wasn't able to review any files in this pull request.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
16 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

…ReversePInvoke test
Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 11, 2026 23:00
CopilotAI changed the title [WIP] Fix test failure in Interop/COM GcRestrictedCalloutReversePInvokeDisable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading supportAug 11, 2026
CopilotAI requested a review from jkoritzinskyAugust 11, 2026 23:00

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 1 comment.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/interop-contrib
See info in area-owners.md if you want to be subscribed.

@jkoritzinsky

Copy link
Copy Markdown
Member

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property in the class to use that composes the condition you need.

Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:16

CopilotAI commented Aug 12, 2026

Copy link
Copy Markdown
ContributorAuthor

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property ...

Addressed in 22a70bc: removed the ActiveIssue attributes and switched to a composed condition (IsSupportedConfiguration) used by ConditionalFact, which now requires multithreading support and excludes GC stress.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • IsSupportedConfiguration disables the test under GC stress, but it does not disable it under JIT stress modes even though the PR intent/title mention JIT stress. This means the test will still run (and potentially still hit the ComWrappers.RegisterForTrackerSupport PNSE) under DOTNET_JitStress* configurations.
 public static bool IsSupportedConfiguration =>
TestLibrary.PlatformDetection.IsMultithreadingSupported &&
!TestLibrary.CoreClrConfigurationDetection.IsGCStress;

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:18

  • The PR description says stress-mode disabling is done via [ActiveIssue] attributes and that [ConditionalFact] is only used to gate on multithreading support. The implementation here instead uses a combined IsSupportedConfiguration predicate on Program and does not add any [ActiveIssue] annotations. Please either update the PR description to match the actual approach, or adjust the attributes to match the described behavior (so the skip reason/issue tracking is accurate).
 [ConditionalFact(typeof(Program), nameof(IsSupportedConfiguration))]

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:45
@jkoritzinsky
jkoritzinsky marked this pull request as ready for review August 12, 2026 04:45
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).
13 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:14

  • PlatformDetection is referenced in the new [ConditionalFact], but this file doesn't import the TestLibrary namespace, so this likely won't compile (other tests that use PlatformDetection include using TestLibrary;).
 [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))]

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:15

  • The PR description/title mention disabling this test under both GC stress and JIT stress, but the current [SkipOnCoreClr] only skips AnyGCStress. If RegisterForTrackerSupport also throws under JIT stress, this will continue failing in those legs.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

CopilotAI review requested due to automatic review settings August 12, 2026 05:21
@jkoritzinsky
jkoritzinsky enabled auto-merge (squash) August 12, 2026 05:21

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (1)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • The PR description says this test should be disabled under both GC stress and any JIT stress modes, but the new SkipOnCoreClr attribute only skips RuntimeTestModes.AnyGCStress. This can leave the test enabled (and potentially failing) under AnyJitStress configurations.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

@jkotas

Copy link
Copy Markdown
Member

/ba-g Known issues #131924#132030

@jkoritzinsky
jkoritzinsky merged commit 1adc98b into mainAug 12, 2026
82 of 85 checks passed
@jkoritzinsky
jkoritzinsky deleted the copilot/test-failure-interop-com branch August 12, 2026 18:43
@dotnet-milestone-botdotnet-milestone-botBot added this to the 11.0-rc1 milestone Aug 13, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Test failure: Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke.cmd

4 participants

@jkoritzinsky@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support - #132176

Merged
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com
Aug 12, 2026
Merged

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support#132176
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com

Conversation

CopilotAI commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

GcRestrictedCalloutReversePInvoke fails under stress runs because ComWrappers.RegisterForTrackerSupport throws PlatformNotSupportedException under AnyGCStress/AnyJitStress configurations (introduced by #130459), and the test inherently depends on background GC/multithreading.

Changes

  • Added [ActiveIssue] attributes disabling the test under AnyGCStress and AnyJitStress coreclr configurations, via CoreClrConfigurationDetection.IsGCStress and CoreClrConfigurationDetection.IsAnyJitStress.
  • Replaced [Fact] with [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))] so the test only runs where multithreading is supported.

CopilotAI lite review requested due to automatic review settings August 11, 2026 22:48

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot wasn't able to review any files in this pull request.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
16 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

…ReversePInvoke test
Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 11, 2026 23:00
CopilotAI changed the title [WIP] Fix test failure in Interop/COM GcRestrictedCalloutReversePInvokeDisable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading supportAug 11, 2026
CopilotAI requested a review from jkoritzinskyAugust 11, 2026 23:00

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 1 comment.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/interop-contrib
See info in area-owners.md if you want to be subscribed.

@jkoritzinsky

Copy link
Copy Markdown
Member

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property in the class to use that composes the condition you need.

Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:16

CopilotAI commented Aug 12, 2026

Copy link
Copy Markdown
ContributorAuthor

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property ...

Addressed in 22a70bc: removed the ActiveIssue attributes and switched to a composed condition (IsSupportedConfiguration) used by ConditionalFact, which now requires multithreading support and excludes GC stress.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • IsSupportedConfiguration disables the test under GC stress, but it does not disable it under JIT stress modes even though the PR intent/title mention JIT stress. This means the test will still run (and potentially still hit the ComWrappers.RegisterForTrackerSupport PNSE) under DOTNET_JitStress* configurations.
 public static bool IsSupportedConfiguration =>
TestLibrary.PlatformDetection.IsMultithreadingSupported &&
!TestLibrary.CoreClrConfigurationDetection.IsGCStress;

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:18

  • The PR description says stress-mode disabling is done via [ActiveIssue] attributes and that [ConditionalFact] is only used to gate on multithreading support. The implementation here instead uses a combined IsSupportedConfiguration predicate on Program and does not add any [ActiveIssue] annotations. Please either update the PR description to match the actual approach, or adjust the attributes to match the described behavior (so the skip reason/issue tracking is accurate).
 [ConditionalFact(typeof(Program), nameof(IsSupportedConfiguration))]

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:45
@jkoritzinsky
jkoritzinsky marked this pull request as ready for review August 12, 2026 04:45
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).
13 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:14

  • PlatformDetection is referenced in the new [ConditionalFact], but this file doesn't import the TestLibrary namespace, so this likely won't compile (other tests that use PlatformDetection include using TestLibrary;).
 [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))]

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:15

  • The PR description/title mention disabling this test under both GC stress and JIT stress, but the current [SkipOnCoreClr] only skips AnyGCStress. If RegisterForTrackerSupport also throws under JIT stress, this will continue failing in those legs.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

CopilotAI review requested due to automatic review settings August 12, 2026 05:21
@jkoritzinsky
jkoritzinsky enabled auto-merge (squash) August 12, 2026 05:21

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (1)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • The PR description says this test should be disabled under both GC stress and any JIT stress modes, but the new SkipOnCoreClr attribute only skips RuntimeTestModes.AnyGCStress. This can leave the test enabled (and potentially failing) under AnyJitStress configurations.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

@jkotas

Copy link
Copy Markdown
Member

/ba-g Known issues #131924#132030

@jkoritzinsky
jkoritzinsky merged commit 1adc98b into mainAug 12, 2026
82 of 85 checks passed
@jkoritzinsky
jkoritzinsky deleted the copilot/test-failure-interop-com branch August 12, 2026 18:43
@dotnet-milestone-botdotnet-milestone-botBot added this to the 11.0-rc1 milestone Aug 13, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Test failure: Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke.cmd

4 participants

@jkoritzinsky@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support - #132176

Merged
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com
Aug 12, 2026
Merged

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support#132176
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com

Conversation

CopilotAI commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

GcRestrictedCalloutReversePInvoke fails under stress runs because ComWrappers.RegisterForTrackerSupport throws PlatformNotSupportedException under AnyGCStress/AnyJitStress configurations (introduced by #130459), and the test inherently depends on background GC/multithreading.

Changes

  • Added [ActiveIssue] attributes disabling the test under AnyGCStress and AnyJitStress coreclr configurations, via CoreClrConfigurationDetection.IsGCStress and CoreClrConfigurationDetection.IsAnyJitStress.
  • Replaced [Fact] with [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))] so the test only runs where multithreading is supported.

CopilotAI lite review requested due to automatic review settings August 11, 2026 22:48

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot wasn't able to review any files in this pull request.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
16 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

…ReversePInvoke test
Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 11, 2026 23:00
CopilotAI changed the title [WIP] Fix test failure in Interop/COM GcRestrictedCalloutReversePInvokeDisable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading supportAug 11, 2026
CopilotAI requested a review from jkoritzinskyAugust 11, 2026 23:00

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 1 comment.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/interop-contrib
See info in area-owners.md if you want to be subscribed.

@jkoritzinsky

Copy link
Copy Markdown
Member

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property in the class to use that composes the condition you need.

Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:16

CopilotAI commented Aug 12, 2026

Copy link
Copy Markdown
ContributorAuthor

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property ...

Addressed in 22a70bc: removed the ActiveIssue attributes and switched to a composed condition (IsSupportedConfiguration) used by ConditionalFact, which now requires multithreading support and excludes GC stress.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • IsSupportedConfiguration disables the test under GC stress, but it does not disable it under JIT stress modes even though the PR intent/title mention JIT stress. This means the test will still run (and potentially still hit the ComWrappers.RegisterForTrackerSupport PNSE) under DOTNET_JitStress* configurations.
 public static bool IsSupportedConfiguration =>
TestLibrary.PlatformDetection.IsMultithreadingSupported &&
!TestLibrary.CoreClrConfigurationDetection.IsGCStress;

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:18

  • The PR description says stress-mode disabling is done via [ActiveIssue] attributes and that [ConditionalFact] is only used to gate on multithreading support. The implementation here instead uses a combined IsSupportedConfiguration predicate on Program and does not add any [ActiveIssue] annotations. Please either update the PR description to match the actual approach, or adjust the attributes to match the described behavior (so the skip reason/issue tracking is accurate).
 [ConditionalFact(typeof(Program), nameof(IsSupportedConfiguration))]

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:45
@jkoritzinsky
jkoritzinsky marked this pull request as ready for review August 12, 2026 04:45
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).
13 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:14

  • PlatformDetection is referenced in the new [ConditionalFact], but this file doesn't import the TestLibrary namespace, so this likely won't compile (other tests that use PlatformDetection include using TestLibrary;).
 [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))]

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:15

  • The PR description/title mention disabling this test under both GC stress and JIT stress, but the current [SkipOnCoreClr] only skips AnyGCStress. If RegisterForTrackerSupport also throws under JIT stress, this will continue failing in those legs.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

CopilotAI review requested due to automatic review settings August 12, 2026 05:21
@jkoritzinsky
jkoritzinsky enabled auto-merge (squash) August 12, 2026 05:21

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (1)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • The PR description says this test should be disabled under both GC stress and any JIT stress modes, but the new SkipOnCoreClr attribute only skips RuntimeTestModes.AnyGCStress. This can leave the test enabled (and potentially failing) under AnyJitStress configurations.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

@jkotas

Copy link
Copy Markdown
Member

/ba-g Known issues #131924#132030

@jkoritzinsky
jkoritzinsky merged commit 1adc98b into mainAug 12, 2026
82 of 85 checks passed
@jkoritzinsky
jkoritzinsky deleted the copilot/test-failure-interop-com branch August 12, 2026 18:43
@dotnet-milestone-botdotnet-milestone-botBot added this to the 11.0-rc1 milestone Aug 13, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Test failure: Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke.cmd

4 participants

@jkoritzinsky@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support - #132176

Merged
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com
Aug 12, 2026
Merged

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support#132176
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com

Conversation

CopilotAI commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

GcRestrictedCalloutReversePInvoke fails under stress runs because ComWrappers.RegisterForTrackerSupport throws PlatformNotSupportedException under AnyGCStress/AnyJitStress configurations (introduced by #130459), and the test inherently depends on background GC/multithreading.

Changes

  • Added [ActiveIssue] attributes disabling the test under AnyGCStress and AnyJitStress coreclr configurations, via CoreClrConfigurationDetection.IsGCStress and CoreClrConfigurationDetection.IsAnyJitStress.
  • Replaced [Fact] with [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))] so the test only runs where multithreading is supported.

CopilotAI lite review requested due to automatic review settings August 11, 2026 22:48

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot wasn't able to review any files in this pull request.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
16 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

…ReversePInvoke test
Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 11, 2026 23:00
CopilotAI changed the title [WIP] Fix test failure in Interop/COM GcRestrictedCalloutReversePInvokeDisable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading supportAug 11, 2026
CopilotAI requested a review from jkoritzinskyAugust 11, 2026 23:00

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 1 comment.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/interop-contrib
See info in area-owners.md if you want to be subscribed.

@jkoritzinsky

Copy link
Copy Markdown
Member

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property in the class to use that composes the condition you need.

Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:16

CopilotAI commented Aug 12, 2026

Copy link
Copy Markdown
ContributorAuthor

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property ...

Addressed in 22a70bc: removed the ActiveIssue attributes and switched to a composed condition (IsSupportedConfiguration) used by ConditionalFact, which now requires multithreading support and excludes GC stress.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • IsSupportedConfiguration disables the test under GC stress, but it does not disable it under JIT stress modes even though the PR intent/title mention JIT stress. This means the test will still run (and potentially still hit the ComWrappers.RegisterForTrackerSupport PNSE) under DOTNET_JitStress* configurations.
 public static bool IsSupportedConfiguration =>
TestLibrary.PlatformDetection.IsMultithreadingSupported &&
!TestLibrary.CoreClrConfigurationDetection.IsGCStress;

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:18

  • The PR description says stress-mode disabling is done via [ActiveIssue] attributes and that [ConditionalFact] is only used to gate on multithreading support. The implementation here instead uses a combined IsSupportedConfiguration predicate on Program and does not add any [ActiveIssue] annotations. Please either update the PR description to match the actual approach, or adjust the attributes to match the described behavior (so the skip reason/issue tracking is accurate).
 [ConditionalFact(typeof(Program), nameof(IsSupportedConfiguration))]

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:45
@jkoritzinsky
jkoritzinsky marked this pull request as ready for review August 12, 2026 04:45
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).
13 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:14

  • PlatformDetection is referenced in the new [ConditionalFact], but this file doesn't import the TestLibrary namespace, so this likely won't compile (other tests that use PlatformDetection include using TestLibrary;).
 [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))]

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:15

  • The PR description/title mention disabling this test under both GC stress and JIT stress, but the current [SkipOnCoreClr] only skips AnyGCStress. If RegisterForTrackerSupport also throws under JIT stress, this will continue failing in those legs.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

CopilotAI review requested due to automatic review settings August 12, 2026 05:21
@jkoritzinsky
jkoritzinsky enabled auto-merge (squash) August 12, 2026 05:21

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (1)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • The PR description says this test should be disabled under both GC stress and any JIT stress modes, but the new SkipOnCoreClr attribute only skips RuntimeTestModes.AnyGCStress. This can leave the test enabled (and potentially failing) under AnyJitStress configurations.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

@jkotas

Copy link
Copy Markdown
Member

/ba-g Known issues #131924#132030

@jkoritzinsky
jkoritzinsky merged commit 1adc98b into mainAug 12, 2026
82 of 85 checks passed
@jkoritzinsky
jkoritzinsky deleted the copilot/test-failure-interop-com branch August 12, 2026 18:43
@dotnet-milestone-botdotnet-milestone-botBot added this to the 11.0-rc1 milestone Aug 13, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Test failure: Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke.cmd

4 participants

@jkoritzinsky@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support - #132176

Merged
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com
Aug 12, 2026
Merged

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support#132176
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com

Conversation

CopilotAI commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

GcRestrictedCalloutReversePInvoke fails under stress runs because ComWrappers.RegisterForTrackerSupport throws PlatformNotSupportedException under AnyGCStress/AnyJitStress configurations (introduced by #130459), and the test inherently depends on background GC/multithreading.

Changes

  • Added [ActiveIssue] attributes disabling the test under AnyGCStress and AnyJitStress coreclr configurations, via CoreClrConfigurationDetection.IsGCStress and CoreClrConfigurationDetection.IsAnyJitStress.
  • Replaced [Fact] with [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))] so the test only runs where multithreading is supported.

CopilotAI lite review requested due to automatic review settings August 11, 2026 22:48

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot wasn't able to review any files in this pull request.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
16 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

…ReversePInvoke test
Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 11, 2026 23:00
CopilotAI changed the title [WIP] Fix test failure in Interop/COM GcRestrictedCalloutReversePInvokeDisable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading supportAug 11, 2026
CopilotAI requested a review from jkoritzinskyAugust 11, 2026 23:00

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 1 comment.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/interop-contrib
See info in area-owners.md if you want to be subscribed.

@jkoritzinsky

Copy link
Copy Markdown
Member

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property in the class to use that composes the condition you need.

Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:16

CopilotAI commented Aug 12, 2026

Copy link
Copy Markdown
ContributorAuthor

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property ...

Addressed in 22a70bc: removed the ActiveIssue attributes and switched to a composed condition (IsSupportedConfiguration) used by ConditionalFact, which now requires multithreading support and excludes GC stress.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • IsSupportedConfiguration disables the test under GC stress, but it does not disable it under JIT stress modes even though the PR intent/title mention JIT stress. This means the test will still run (and potentially still hit the ComWrappers.RegisterForTrackerSupport PNSE) under DOTNET_JitStress* configurations.
 public static bool IsSupportedConfiguration =>
TestLibrary.PlatformDetection.IsMultithreadingSupported &&
!TestLibrary.CoreClrConfigurationDetection.IsGCStress;

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:18

  • The PR description says stress-mode disabling is done via [ActiveIssue] attributes and that [ConditionalFact] is only used to gate on multithreading support. The implementation here instead uses a combined IsSupportedConfiguration predicate on Program and does not add any [ActiveIssue] annotations. Please either update the PR description to match the actual approach, or adjust the attributes to match the described behavior (so the skip reason/issue tracking is accurate).
 [ConditionalFact(typeof(Program), nameof(IsSupportedConfiguration))]

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:45
@jkoritzinsky
jkoritzinsky marked this pull request as ready for review August 12, 2026 04:45
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).
13 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:14

  • PlatformDetection is referenced in the new [ConditionalFact], but this file doesn't import the TestLibrary namespace, so this likely won't compile (other tests that use PlatformDetection include using TestLibrary;).
 [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))]

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:15

  • The PR description/title mention disabling this test under both GC stress and JIT stress, but the current [SkipOnCoreClr] only skips AnyGCStress. If RegisterForTrackerSupport also throws under JIT stress, this will continue failing in those legs.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

CopilotAI review requested due to automatic review settings August 12, 2026 05:21
@jkoritzinsky
jkoritzinsky enabled auto-merge (squash) August 12, 2026 05:21

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (1)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • The PR description says this test should be disabled under both GC stress and any JIT stress modes, but the new SkipOnCoreClr attribute only skips RuntimeTestModes.AnyGCStress. This can leave the test enabled (and potentially failing) under AnyJitStress configurations.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

@jkotas

Copy link
Copy Markdown
Member

/ba-g Known issues #131924#132030

@jkoritzinsky
jkoritzinsky merged commit 1adc98b into mainAug 12, 2026
82 of 85 checks passed
@jkoritzinsky
jkoritzinsky deleted the copilot/test-failure-interop-com branch August 12, 2026 18:43
@dotnet-milestone-botdotnet-milestone-botBot added this to the 11.0-rc1 milestone Aug 13, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Test failure: Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke.cmd

4 participants

@jkoritzinsky@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support - #132176

Merged
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com
Aug 12, 2026
Merged

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support#132176
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com

Conversation

CopilotAI commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

GcRestrictedCalloutReversePInvoke fails under stress runs because ComWrappers.RegisterForTrackerSupport throws PlatformNotSupportedException under AnyGCStress/AnyJitStress configurations (introduced by #130459), and the test inherently depends on background GC/multithreading.

Changes

  • Added [ActiveIssue] attributes disabling the test under AnyGCStress and AnyJitStress coreclr configurations, via CoreClrConfigurationDetection.IsGCStress and CoreClrConfigurationDetection.IsAnyJitStress.
  • Replaced [Fact] with [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))] so the test only runs where multithreading is supported.

CopilotAI lite review requested due to automatic review settings August 11, 2026 22:48

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot wasn't able to review any files in this pull request.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
16 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

…ReversePInvoke test
Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 11, 2026 23:00
CopilotAI changed the title [WIP] Fix test failure in Interop/COM GcRestrictedCalloutReversePInvokeDisable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading supportAug 11, 2026
CopilotAI requested a review from jkoritzinskyAugust 11, 2026 23:00

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 1 comment.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/interop-contrib
See info in area-owners.md if you want to be subscribed.

@jkoritzinsky

Copy link
Copy Markdown
Member

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property in the class to use that composes the condition you need.

Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:16

CopilotAI commented Aug 12, 2026

Copy link
Copy Markdown
ContributorAuthor

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property ...

Addressed in 22a70bc: removed the ActiveIssue attributes and switched to a composed condition (IsSupportedConfiguration) used by ConditionalFact, which now requires multithreading support and excludes GC stress.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • IsSupportedConfiguration disables the test under GC stress, but it does not disable it under JIT stress modes even though the PR intent/title mention JIT stress. This means the test will still run (and potentially still hit the ComWrappers.RegisterForTrackerSupport PNSE) under DOTNET_JitStress* configurations.
 public static bool IsSupportedConfiguration =>
TestLibrary.PlatformDetection.IsMultithreadingSupported &&
!TestLibrary.CoreClrConfigurationDetection.IsGCStress;

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:18

  • The PR description says stress-mode disabling is done via [ActiveIssue] attributes and that [ConditionalFact] is only used to gate on multithreading support. The implementation here instead uses a combined IsSupportedConfiguration predicate on Program and does not add any [ActiveIssue] annotations. Please either update the PR description to match the actual approach, or adjust the attributes to match the described behavior (so the skip reason/issue tracking is accurate).
 [ConditionalFact(typeof(Program), nameof(IsSupportedConfiguration))]

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:45
@jkoritzinsky
jkoritzinsky marked this pull request as ready for review August 12, 2026 04:45
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).
13 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:14

  • PlatformDetection is referenced in the new [ConditionalFact], but this file doesn't import the TestLibrary namespace, so this likely won't compile (other tests that use PlatformDetection include using TestLibrary;).
 [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))]

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:15

  • The PR description/title mention disabling this test under both GC stress and JIT stress, but the current [SkipOnCoreClr] only skips AnyGCStress. If RegisterForTrackerSupport also throws under JIT stress, this will continue failing in those legs.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

CopilotAI review requested due to automatic review settings August 12, 2026 05:21
@jkoritzinsky
jkoritzinsky enabled auto-merge (squash) August 12, 2026 05:21

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (1)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • The PR description says this test should be disabled under both GC stress and any JIT stress modes, but the new SkipOnCoreClr attribute only skips RuntimeTestModes.AnyGCStress. This can leave the test enabled (and potentially failing) under AnyJitStress configurations.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

@jkotas

Copy link
Copy Markdown
Member

/ba-g Known issues #131924#132030

@jkoritzinsky
jkoritzinsky merged commit 1adc98b into mainAug 12, 2026
82 of 85 checks passed
@jkoritzinsky
jkoritzinsky deleted the copilot/test-failure-interop-com branch August 12, 2026 18:43
@dotnet-milestone-botdotnet-milestone-botBot added this to the 11.0-rc1 milestone Aug 13, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Test failure: Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke.cmd

4 participants

@jkoritzinsky@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support - #132176

Merged
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com
Aug 12, 2026
Merged

Disable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading support#132176
jkoritzinsky merged 5 commits into
mainfrom
copilot/test-failure-interop-com

Conversation

CopilotAI commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

GcRestrictedCalloutReversePInvoke fails under stress runs because ComWrappers.RegisterForTrackerSupport throws PlatformNotSupportedException under AnyGCStress/AnyJitStress configurations (introduced by #130459), and the test inherently depends on background GC/multithreading.

Changes

  • Added [ActiveIssue] attributes disabling the test under AnyGCStress and AnyJitStress coreclr configurations, via CoreClrConfigurationDetection.IsGCStress and CoreClrConfigurationDetection.IsAnyJitStress.
  • Replaced [Fact] with [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))] so the test only runs where multithreading is supported.

CopilotAI lite review requested due to automatic review settings August 11, 2026 22:48

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot wasn't able to review any files in this pull request.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
16 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

…ReversePInvoke test
Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 11, 2026 23:00
CopilotAI changed the title [WIP] Fix test failure in Interop/COM GcRestrictedCalloutReversePInvokeDisable GcRestrictedCalloutReversePInvoke under GC/JIT stress modes; require multithreading supportAug 11, 2026
CopilotAI requested a review from jkoritzinskyAugust 11, 2026 23:00

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 1 comment.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/interop-contrib
See info in area-owners.md if you want to be subscribed.

@jkoritzinsky

Copy link
Copy Markdown
Member

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property in the class to use that composes the condition you need.

Co-authored-by: jkoritzinsky <1571408+jkoritzinsky@users.noreply.github.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:16

CopilotAI commented Aug 12, 2026

Copy link
Copy Markdown
ContributorAuthor

@copilot please address the review feedback. Remove the ActiveIssue attributes and instead update the test to be conditional on multi threading support and not GC stress. You can introduce a property ...

Addressed in 22a70bc: removed the ActiveIssue attributes and switched to a composed condition (IsSupportedConfiguration) used by ConditionalFact, which now requires multithreading support and excludes GC stress.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • IsSupportedConfiguration disables the test under GC stress, but it does not disable it under JIT stress modes even though the PR intent/title mention JIT stress. This means the test will still run (and potentially still hit the ComWrappers.RegisterForTrackerSupport PNSE) under DOTNET_JitStress* configurations.
 public static bool IsSupportedConfiguration =>
TestLibrary.PlatformDetection.IsMultithreadingSupported &&
!TestLibrary.CoreClrConfigurationDetection.IsGCStress;

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:18

  • The PR description says stress-mode disabling is done via [ActiveIssue] attributes and that [ConditionalFact] is only used to gate on multithreading support. The implementation here instead uses a combined IsSupportedConfiguration predicate on Program and does not add any [ActiveIssue] annotations. Please either update the PR description to match the actual approach, or adjust the attributes to match the described behavior (so the skip reason/issue tracking is accurate).
 [ConditionalFact(typeof(Program), nameof(IsSupportedConfiguration))]

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
CopilotAI review requested due to automatic review settings August 12, 2026 04:45
@jkoritzinsky
jkoritzinsky marked this pull request as ready for review August 12, 2026 04:45
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).
13 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (2)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:14

  • PlatformDetection is referenced in the new [ConditionalFact], but this file doesn't import the TestLibrary namespace, so this likely won't compile (other tests that use PlatformDetection include using TestLibrary;).
 [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsMultithreadingSupported))]

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:15

  • The PR description/title mention disabling this test under both GC stress and JIT stress, but the current [SkipOnCoreClr] only skips AnyGCStress. If RegisterForTrackerSupport also throws under JIT stress, this will continue failing in those legs.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

CopilotAI review requested due to automatic review settings August 12, 2026 05:21
@jkoritzinsky
jkoritzinsky enabled auto-merge (squash) August 12, 2026 05:21

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

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

Suppressed comments (1)

src/tests/Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/Program.cs:16

  • The PR description says this test should be disabled under both GC stress and any JIT stress modes, but the new SkipOnCoreClr attribute only skips RuntimeTestModes.AnyGCStress. This can leave the test enabled (and potentially failing) under AnyJitStress configurations.
 [SkipOnCoreClr("This test is not compatible with GC stress.", RuntimeTestModes.AnyGCStress)]

@jkotas

Copy link
Copy Markdown
Member

/ba-g Known issues #131924#132030

@jkoritzinsky
jkoritzinsky merged commit 1adc98b into mainAug 12, 2026
82 of 85 checks passed
@jkoritzinsky
jkoritzinsky deleted the copilot/test-failure-interop-com branch August 12, 2026 18:43
@dotnet-milestone-botdotnet-milestone-botBot added this to the 11.0-rc1 milestone Aug 13, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Test failure: Interop/COM/ComWrappers/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke/GcRestrictedCalloutReversePInvoke.cmd

4 participants

@jkoritzinsky@jkotas