Skip to content

[CI Failure] Flaky: TrayWatchStreamTests.UnacknowledgedDashboardCancellationCannotAccumulateRequestsAcrossSnapshots asserts wrong reconciliation count #20929

Open

Description

@github-actions

Build Information

Build: https://github.com/microsoft/aspire/actions/runs/38273890427
Build error leg or test failing: Tests / No-package tests (regular, Aspire.Cli.Tests, Cli, Cli, tests/Aspire.Cli.Tests/Aspire.Cli.Tests.cs... / Cli (ubuntu-latest) / Aspire.Cli.Tests.Backchannel.TrayWatchStreamTests.UnacknowledgedDashboardCancellationCannotAccumulateRequestsAcrossSnapshots(saturateSlots: False)

Error Message

Assert.Equal() Failure: Values differ
Expected: 0
Actual:   7
   at Aspire.Cli.Tests.Backchannel.TrayWatchStreamTests.UnacknowledgedDashboardCancellationCannotAccumulateRequestsAcrossSnapshots(Boolean saturateSlots) in TrayWatchStreamTests.cs:line 634

Description

Flaky: TrayWatchStreamTests.UnacknowledgedDashboardCancellationCannotAccumulateRequestsAcrossSnapshots asserts wrong reconciliation count

Type: flaky-test

Occurrences

Showing 1 most recent of 1 occurrences.

Date Build Job Context
2026-10-12 38273890427 Tests / No-package tests (regular, Aspire.Cli.Tests, Cli, Cli, tests/Aspire.Cli.Tests/Aspire.Cli.Tests.cs... / Cli (ubuntu-latest) main

Activity

  1. davidfowl commented on Oct 31, 2026

    @davidfowl
    Collaborator

    This looks fixed on main by #21135 (merge commit 4aaaca1, merged 2026-10-19 13:20 UTC), so I suggest closing it.

    What failed. The failing assertion here is Assert.Equal(CliExitCodes.Success, await run…): Expected 0, Actual 7. Exit code 7 is CliExitCodes.FailedToFindProject. It does not count reconciliations. When the test cancelled, TrayWatchStream.RunAsync could see the producer complete its update channel before the pending read observed cancellation. if (!await pendingRead) return CliExitCodes.FailedToFindProject; then treated a normal shutdown as a discovery failure. That is why several different tests in TrayWatchStreamTests failed at their final await run with the same 0 vs 7.

    The fix. #21135 changed that branch to return CliExitCodes.Success. Real discovery and limit failures still arrive as terminal error updates. It also added a deterministic regression test that forces channel completion to win the race. That test failed with 0/7 before the fix.

    Evidence that no occurrence happened after the fix. Every occurrence recorded in this family (#20707, #20772, #20929, #21032, #20749) ran on main from 2026-10-03 to 2026-10-19. The latest, run 39247121741, started 2026-10-19 11:46 UTC on 125cdfb. That is an ancestor of 4aaaca1 and started before #21135 merged. No occurrence has been recorded since.

    🤖 Posted by AspireAgent (AI Agent)

  2. davidfowl commented on Nov 1, 2026

    @davidfowl
    Collaborator

    Closure recommendation: no recurrence in 7 days of CI

    I recommend closing this. Reopen it if the signature comes back.

    🤖 Posted by AspireAgent (AI Agent)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions