[automated] This report was produced from a read-only investigation of the CI failure-analysis workflow.
Is there an existing issue for this?
Describe the bug
Analyze CI Failure can create a new ci-failure-cause issue for a flaky test that already has an open canonical issue.
This occurred when Analyze CI Failure run 31204932433 processed CI run 31200870870. The two resulting issues identify the same fully qualified test:
Aspire.Hosting.RemoteHost.Tests.JsonRpcAuthenticationTests.FailedAuthentication_ClosesConnection_AndPreventsFurtherCalls
However, their generated cause IDs differ:
#18840: remotehost-jsonrpc-auth-timeout
#19143: remotehost-jsonrpcauth-rpc-timeout
The workflow loaded 34 prior causes, including the cause linked to #18840. That cause appeared around line 508 of analysis-summary.md, but the agent read only the first 300 lines. It therefore generated a new cause ID.
The publish step reuses issues only through the exact generated cause ID or its exact HTML marker. Because the IDs differed, it could not match open issue #18840 and created #19143.
Expected Behavior
When a flaky-test cause has the same fully qualified test_name as a prior cause, the workflow should reuse the prior cause ID and append the occurrence to its existing issue.
Steps To Reproduce
- Populate the
memory/ci-failure-analysis branch with enough cause files that the matching prior cause is rendered below the portion of analysis-summary.md read by the agent.
- Trigger
Analyze CI Failure for another occurrence of that test.
- Observe the agent generate a new cause ID because the matching prior cause was not in its read context.
- Observe the publish step fail the exact-marker lookup and create a new issue instead of updating the canonical issue.
Exceptions (if any)
N/A
Aspire doctor output
N/A
Anything else?
Relevant logic in .github/workflows/analyze-ci-failure.md:
- Lines 393–404 render every prior cause into an unbounded final section of
analysis-summary.md.
- Lines 610–670 derive an exact marker from the agent-generated cause ID and search stored/open/closed issues only by that ID or marker.
- Lines 686–707 update an exact match or create a new issue.
- Lines 949–959 instruct the agent to reuse a prior cause when
test_name matches.
The relevant matching behavior remains on main; the later August 19 edit only pinned action versions.
The same analysis run also generated #19144 instead of reusing #18720 for the existing 0xC0000142 Windows process-initialization cause, providing a second instance of the same failure mode.
[automated] This report was produced from a read-only investigation of the CI failure-analysis workflow.
Is there an existing issue for this?
Describe the bug
Analyze CI Failurecan create a newci-failure-causeissue for a flaky test that already has an open canonical issue.This occurred when Analyze CI Failure run 31204932433 processed CI run 31200870870. The two resulting issues identify the same fully qualified test:
However, their generated cause IDs differ:
The workflow loaded 34 prior causes, including the cause linked to #18840. That cause appeared around line 508 of
analysis-summary.md, but the agent read only the first 300 lines. It therefore generated a new cause ID.The publish step reuses issues only through the exact generated cause ID or its exact HTML marker. Because the IDs differed, it could not match open issue #18840 and created #19143.
Expected Behavior
When a flaky-test cause has the same fully qualified
test_nameas a prior cause, the workflow should reuse the prior cause ID and append the occurrence to its existing issue.Steps To Reproduce
memory/ci-failure-analysisbranch with enough cause files that the matching prior cause is rendered below the portion ofanalysis-summary.mdread by the agent.Analyze CI Failurefor another occurrence of that test.Exceptions (if any)
N/A
Aspire doctor output
N/A
Anything else?
Relevant logic in
.github/workflows/analyze-ci-failure.md:analysis-summary.md.test_namematches.The relevant matching behavior remains on
main; the later August 19 edit only pinned action versions.The same analysis run also generated #19144 instead of reusing #18720 for the existing
0xC0000142Windows process-initialization cause, providing a second instance of the same failure mode.