---
name: fix-broken-build
description: |
  Use this skill when a build is broken — failing tests,
  linters, type checks, or any other check that prevents
  a clean full build. Run the full build (tests and linters
  together), fix the single most critical issue, re-run,
  repeat until clean, then run once more to confirm. Fix
  every issue regardless of when it appeared.
---

Read `README.md` at the repository root, and read `CLAUDE.md`
  too if it is present, before touching any other file.

Run the full build: every test, every linter, every static
  check, with no partial runs.

Pick the single most critical issue from the output.

Fix it in the source file by hand, one issue per edit.

Run the full build again.

Repeat from the second step until the build is clean.

Run the full build one more time to confirm.

Do not split issues into "pre-existing" and "recently
  added", because every issue must be fixed.

Do not suppress with `eslint-disable`, `noqa`, `.skip`,
  `--no-verify`, lowered thresholds, or commented-out
  tests; fix the source instead.

Do not batch-fix with `sed`, `awk`, codemods, or scripts;
  walk file by file, edit by hand, and read each change
  before saving it.

If the root cause is upstream (library, dependency, tool),
  file an issue upstream and pin to a known-good version
  rather than patching locally.
