Add pr vs triage agent to analyze pr vstest failures - #1903
Conversation
Signed-off-by: Longxiang Lyu <lolv@microsoft.com>
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
Summary:
Reviewed by: AI agent on behalf of Ying. Non-blocking nits:
|
|
Good spec overall — the PR-diff scoping table (§4a) and cross-build correlation workflow are the strongest parts and directly solve the "innocent PRs getting blamed" problem. A few things worth addressing: Substantive:
Minor:
Also worth triggering a |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
Description of PR
Summary:
Fixes # (issue)
Type of change
Approach
What is the motivation for this PR?
This is inspired from fixing recent PR vstest failures.
VS-test (
Test/TestAsan) failures on sonic-sairedis PRs are almost alwaysrecurring sonic-swss test flakes, but every reviewer re-derives that
conclusion by hand: fetch ADO logs, download the
log@1artifact, readsyslog /
swss.rec/sairedis.rec, check whether the PR diff can evenreach the failing code path, and correlate against recent unrelated PRs.
This is repetitive, error-prone (PRs have been blamed for failures their
diff cannot have caused, e.g. VPP-only diffs vs
vs-backend tests), andthe institutional knowledge (Known Flake Catalog, log layout, retry
detection, ADO REST endpoints) only lives in chat history.
This PR commits that knowledge as an agent spec so the triage is
reproducible and the lessons learned are version-controlled.
Work item tracking
How did you do it?
Added a single new file:
.github/agents/pr-vs-triage.agent.md(+537 / -0)The document is organized as:
Test/TestAsanonly) and what itexplicitly refuses (
Build*,BuildSwss,BuildDocker*, GH Actions,infra-only failures).
names on GitHub.
mssonic/buildproject, public-read),including the per-test
log@1artifact withsyslog,swss.rec,sairedis.rec, andsai_failure_dump/.the
vsbackend) — frees the reviewer from blaming structurallyunreachable failures.
swss-vs-test-fail,swss-vs-flake,asan-leak|uaf,unknown).sonic-swss/tests/.docker-sonic-vs.gz,teamkernel module build,draft sairedis PR pinning a swss fork branch).
exit code 123 semantics, anonymous fallback endpoints, etc.).
stop on auth-gated or out-of-scope failures.
No source code, build, packaging, or CI files are touched. There are no
runtime dependencies.
How did you verify/test it?
N/A
Any platform specific information?
N/A
Documentation