Skip to content

Harden Windows TUI streaming e2e tests against cold-cache timing flakes #3983

Description

@aheritier

Problem

The Windows TUI streaming end-to-end tests are susceptible to timing flakes when running with a cold cache. PR #3980 exposed this in GitHub Actions job 94686562047: the test can exceed the current TUI test timeout while the Windows environment is still starting the stream and rendering the initial output.

Goal

Harden the Windows TUI streaming e2e coverage against cold-cache and startup timing variance without weakening the assertions or masking genuine hangs.

Proposed change

  • Update the affected Windows streaming e2e tests to use the targeted tuitest.WithTimeout(30*time.Second) timeout.
  • Keep the timeout scoped to the affected TUI test(s), rather than applying a broad global timeout increase.
  • Preserve the existing streaming/output assertions and failure diagnostics.
  • Consider a follow-up, if the evidence supports it, to improve CI cache behavior or reduce Windows test parallelism; that follow-up is optional and should not block the focused timeout fix.

Acceptance criteria

  • The affected Windows TUI streaming e2e tests use tuitest.WithTimeout(30*time.Second).
  • The tests pass reliably on Windows with a cold cache, including the scenario represented by PR chore(deps): update reviewed Go dependencies #3980 job 94686562047.
  • Existing assertions continue to verify the expected streamed output and failures still time out with actionable diagnostics.
  • No unrelated platforms or TUI tests receive a global timeout increase.
  • Any CI cache or parallelism adjustment is handled separately as an optional follow-up, with evidence from CI runs.

Validation

  • Run the affected TUI streaming e2e tests repeatedly on Windows with a cold/clean cache.
  • Run the relevant package/unit tests and the repository’s standard validation checks (task test, task lint, and task build) where applicable.
  • Confirm the GitHub Actions Windows job completes successfully and review subsequent runs for recurrence of the timing flake.

Context

Metadata

Metadata

Assignees

Labels

area/ciCI/CD workflows and pipelinearea/testingTest infrastructure, CI/CD, test runners, evaluationarea/tuiFor features/issues/fixes related to the TUIkind/testTest-only changes

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions