npx skills add ...
npx skills add microsoft/vcpkg --skill analyze-ci-failures
Analyze collected vcpkg CI failure evidence, classify regressions and known failures, identify root causes, recommend actions, and generate a report by package and triplet.
npx skills add microsoft/vcpkg --skill analyze-ci-failures
Consumes already-collected CI evidence, cross-references it with baselines, and produces a regression
report. If evidence has not yet been collected, invoke fetch-vcpkg-ci-logs first, then return to this
workflow. Do not duplicate its acquisition steps here.
| Tool | Purpose |
|---|---|
github-mcp-server-get_file_contents | Read baseline files |
When the required evidence is not already local, delegate acquisition to a subagent using
fetch-vcpkg-ci-logs. Prefer a fast, low-cost model for this mechanical work. Ask
the subagent to return only the evidence inventory and local paths; keep regression analysis and report
generation in the main agent.
When the evidence is already available locally, proceed directly to analysis.
OUTPUT RULE: This skill applies only when the user asked for triage or report output, so a
report.mdis always required once it is selected. Write it as soon as step-log analysis completes, then enhance it from artifacts. Your response MUST also contain the complete report content — not a summary.
URL RULE: Your response text (not just the report file) MUST include:
- For scheduled/manual builds: the full Azure DevOps URL
https://dev.azure.com/vcpkg/public/_build/results?buildId={buildId}- For PR builds: both the full PR URL
https://github.com/microsoft/vcpkg/pull/{prNumber}AND the Azure DevOps build URL
Before analysis, read .\.github\skills\shared\azure-vcpkg-ci-notes.md.
Inventory evidence — Confirm the build metadata, failed step-log paths, artifact paths, and triplets available from the acquisition step.
Scan step logs — Extract every REGRESSION: line and retain exact failure type keywords:
BUILD_FAILED, FILE_CONFLICTS, POST_BUILD_CHECKS_FAILED, and
CASCADED_DUE_TO_MISSING_DEPENDENCIES. Capture 2-3 surrounding lines for context.
PR feature-test logs — PR builds may not have REGRESSION: lines. Instead scan for FAIL:,
failed with, and feature-test error: lines. Capture verbatim:
Report each feature failure individually. Dependency ports that fail get their own entry.
Version validation — Inspect the "Validate version files" evidence for version database errors.
Write report immediately — Generate and save report.md using the step-log evidence.
stdout-{triplet}.log tails and supporting logs. Classify per
references/vcpkg-failure-patterns.md.ci.baseline.txt and ci.feature.baseline.txt.Format per references/report-template.md:
[{buildNumber}](https://dev.azure.com/vcpkg/public/_build/results?buildId={buildId})[#{prNumber}](https://github.com/microsoft/vcpkg/pull/{prNumber})x64-windows, arm64-linux) — never "N triplets". Only include triplets that actually had failures for this specific build.BUILD_FAILED, POST_BUILD_CHECKS_FAILED, FILE_CONFLICTS, CASCADED_DUE_TO_MISSING_DEPENDENCIES — never paraphraseWrite reports under the session folder from the environment context, alongside the raw evidence, never into the repository working tree:
Raw evidence stays where fetch-vcpkg-ci-logs placed it, in
{session-folder}/files/ci-failure-logs/; reference those paths from the report instead of copying them.
FILE_CONFLICTS may appear only there.<= version constraints or VCPKG_BUILD_TYPE release