Skip to content

Document the CI failure triage process#5130

Open
btshrewsbury-viam wants to merge 6 commits into
mainfrom
docs/ci-triage-docs
Open

Document the CI failure triage process#5130
btshrewsbury-viam wants to merge 6 commits into
mainfrom
docs/ci-triage-docs

Conversation

@btshrewsbury-viam

Copy link
Copy Markdown
Collaborator

What

Documents how the scheduled-CI failure reporting + triage works, so others can follow, run, or change it.

  • New: .github/workflows/ci-failure-triage.md — the end-to-end flow (scheduled job → report-ci-failure composite action → ci-failure issue → daily Claude Code triage session → fix PR or comment), the setup constraints (must run in a repo-scoped session; fresh/unscoped sessions can't reach the repo), the conventions the session follows (verify-before-acting, exhaustive class fixes, verify retargets, Fixes vs Refs, CLA-safe commit identity), and the full triage prompt kept in sync with the scheduled trigger.
  • Updated: .github/workflows/README.md — the Failure notifications section now links to the triage doc and describes the mechanism accurately.
  • Updated: top-level README.md — CI table's stale N/A (Jira) blocking notes changed to N/A (opens ci-failure issue), plus a note pointing to the triage doc.

Follow-up to #5120 (which removed Jira and added the ci-failure reporting).

Checks

prettier, markdownlint, and vale (error level) pass on all three files.

🤖 Generated with Claude Code

Add .github/workflows/ci-failure-triage.md describing how scheduled-job
failures flow to ci-failure issues (the report-ci-failure composite action) and
how the daily Claude Code triage session turns them into fix PRs or comments,
including setup constraints (must run in a repo-scoped session) and the full
triage prompt kept in sync with the scheduled trigger.

Link it from the workflows README's Failure notifications section and from the
top-level README's CI table (updating the stale "N/A (Jira)" blocking notes to
"opens ci-failure issue").
@netlify

netlify Bot commented Jul 1, 2026

Copy link
Copy Markdown

Deploy Preview for viam-docs ready!

Name Link
🔨 Latest commit 3aa1f91
🔍 Latest deploy log https://app.netlify.com/projects/viam-docs/deploys/6a45949040c023000841116a
😎 Deploy Preview https://deploy-preview-5130--viam-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 37 (🔴 down 8 from production)
Accessibility: 100 (no change from production)
Best Practices: 100 (no change from production)
SEO: 92 (no change from production)
PWA: 70 (no change from production)
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify project configuration.

@viambot viambot added the safe to build This pull request is marked safe to build from a trusted zone label Jul 1, 2026
… gate

Add two lessons from the first live runs: (1) if an issue's linked PR has
failing checks, fix that PR's branch in place instead of skipping it (the
skip-if-open-PR rule would otherwise leave a red PR stuck); (2) make the minimal
diff and run prettier (a required check) — do not follow markdownlint into
formatting that prettier rejects, which had left a PR red.
The scheduled session is long-lived and reused, so its clone can be stale. Add
an explicit sync step (git fetch + reset to origin/main; re-fetch before touching
a PR branch) and stop assuming a fresh clone. Also make existing-PR discovery
robust: a 'Refs #n' mention is not a formal linked-PR, so check the issue's
cross-references, comments, and claude/ci-fix-* branches.
Make the automated PRs easy to spot and filter; keep the prefix when updating an
existing PR title too.
PR #5133 passed a local `npx prettier --check` but failed CI's
prettier check: npx resolved an unpinned `prettier` to a newer local
version (3.8.1) that formats blank-lines-before-nested-lists
differently than the 3.2.5 that .github/workflows/prettier-lint.yml
pins. Pin the pre-PR check commands to prettier@3.2.5 in both
CLAUDE.md and the triage prompt, and add a step to the triage prompt
to verify the pushed branch's actual CI status rather than trusting
a local check alone.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

safe to build This pull request is marked safe to build from a trusted zone

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants