Extend the skills and gate their scripts
The skills told an agent how to read a review but not how to fetch every inline thread or what a push leaves unproven, which lane to rerun but not how to tell a current CI failure from one on an older head, and which UI rules reviewers raise but not how to walk a changed flow or investigate it with the existing browser checks. This adds that guidance where each topic already lives, plus the rules for applying a requested label, assignee, sub-issue or dependency, linking the sections that already hold a rule rather than restating it. It also fixes edge cases in both triage sweeps (a PR with no commits ended the PR sweep; a reporter's body edit hidden by a later maintainer edit, an assignee with no recorded act, and several empty-section and revision cases were misjudged), and replaces the awk reference checker with scripts/check-skill-refs.py, which follows GitHub's anchor rule and parses fences and code spans properly. Both now run in scripts/test.sh: a skill-refs gate over the real skills, and tests/test_skill_scripts.py, which drives the sweeps against a fake gh and the checker against a scratch repository.
Verified with the full ./scripts/test.sh at the tip (all three lanes, nothing skipped), plus shellcheck, ruff, the new suite and the reference check at each of the three commits. The new suite fails all ten bug cases against the previous scripts and passes its baseline cases on both. Both sweeps were also run read-only against this repository; their lists differed from an earlier snapshot only where issues and PRs had changed on GitHub since.
Summary by cubic
Extends the agent skills with the mechanics of closing out review feedback (fetching every inline thread, confirming a push addressed it), of telling a current CI failure from one on an older head, and of walking a changed UI flow with the existing browser lanes, plus the rules for applying a requested label, assignee, sub-issue or dependency. Fixes edge cases in both triage sweeps and replaces the awk reference checker with scripts/check-skill-refs.py, which follows GitHub's anchor rule and parses fences and code spans correctly; both now run in scripts/test.sh via the new tests/test_skill_scripts.py.
Bug Fixes
- A PR force-pushed back to its base no longer ends the PR sweep in a jq error.
- A current hand-written rebase request supersedes an older fixed-text one on any branch, not only conflicting ones.
- The issue sweep reads every body edit instead of the last, so a maintainer tidying the body no longer hides the reporter's answer.
- Empty-section, revision and idle-day cases are judged correctly when the history is cut, and a revision named in uppercase is no longer missed.
Refactors
skill-refs.shbecomesscripts/check-skill-refs.py, which follows GitHub's anchor rule and parses inline code and fences properly.- The reference check and the sweep scripts are tested in
scripts/test.sh, the sweeps against a fakeghand the checker against a scratch repository, and the skills' shell scripts join the shellcheck pass.