Skip to content

Link console capture race fix to issue #4808 - #4815

Merged
Widthdom merged 1 commit into
mainfrom
fix-issue4808
Jul 24, 2026
Merged

Link console capture race fix to issue #4808#4815
Widthdom merged 1 commit into
mainfrom
fix-issue4808

Conversation

@Widthdom

Copy link
Copy Markdown
Owner

Summary

Root cause

The timeout test originally captured and asserted the process-global console writers outside the shared ownership gate. Under full-suite parallel load, another capture could temporarily replace a writer, making the expected writer identity stale. The latest main now snapshots and asserts the writers under TestConsoleLock.Gate; this PR records that the same stabilization resolves #4808 after the implementation landed concurrently through #4800.

Validation

  • Full Release solution run after the functional fix: net8.0 — 10,376 passed, 7 skipped, 0 failed; net9.0 — 9,918 passed, 404 skipped, 0 failed.
  • ConsoleCaptureTests on the final latest-main branch: 8/8 passed on both net8.0 and net9.0.
  • Renamed regression test during Codex review: 1/1 passed on both net8.0 and net9.0.
  • dotnet run --project tools/CodeIndex.Changelog -- check: 49 fragments validated.
  • git diff --check origin/main..HEAD: passed.
  • Codex adversarial review: No blocking/actionable issues found.

Documentation and changelog

  • Extends the existing bilingual fragment as changelog.d/unreleased/4800-4808.fixed.md.
  • The latest main already contains synchronized English/Japanese TESTING_GUIDE.md guidance for snapshotting and asserting global console writers under the shared gate.
  • CHANGELOG.md is unchanged.

Follow-up candidates

  • None.

Fixes #4808

@Widthdom
Widthdom marked this pull request as ready for review July 24, 2026 18:22
@Widthdom
Widthdom merged commit 748ad01 into main Jul 24, 2026
11 checks passed
@Widthdom
Widthdom deleted the fix-issue4808 branch July 24, 2026 18:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Full-suite ConsoleCapture timeout test can restore a different writer under load

1 participant