chore(skills): add deps triage skill - #143
Conversation
Walks the open Dependabot queue: classifies each bump, gates on CI and on intentional pins, merges the safe ones and reports what needs a decision. Tailored to this repo's ecosystems, protection rules and merge behaviour.
Greptile SummaryAdds a repository-specific dependency-triage skill that classifies Dependabot updates and gates automated squash merges.
Confidence Score: 4/5The title parsing gap should be fixed before merging because it leaves an existing Dependabot PR format without a reliable bump classification. The new workflow makes merge eligibility depend on old and new versions parsed from the PR title, although this repository has Dependabot titles that place those versions only in the PR body and the skill defines neither a fallback nor fail-closed behavior. Files Needing Attention: .claude/skills/deps/SKILL.md
|
| Filename | Overview |
|---|---|
| .claude/skills/deps/SKILL.md | Adds the complete /deps workflow, but its title-only version parser does not handle a Dependabot title format already used in this repository. |
Reviews (1): Last reviewed commit: "chore(skills): add deps triage skill" | Re-trigger Greptile
|
|
||
| | Condition | Class | | ||
| |-----------|-------| | ||
| | `old.major != new.major` | **major** | |
There was a problem hiding this comment.
Title-only bump classification breaks
When a Dependabot title omits from <old> to <new>, as this repository's browser-actions/release-firefox-addon bump did, this step cannot determine the bump class and defines no fallback or fail-closed behavior, causing queue processing to stop or the update to be handled without establishing that it is safe to merge.
Adds a
/depsskill that works through the open Dependabot queue instead of merging PRs one by one by hand. Companion to the same skill infleetyards/fleetyards, tailored to this repo.It classifies each bump, then applies four gates before merging: bump class (patch/minor may merge, majors go to a human), CI green, no intentional pin undone, and mergeable state. Safe PRs are squash-merged — which enqueues, given the merge queue — and everything else lands in a report with a one-line reason.
What is specific to this repo:
labels:block in.github/dependabot.yml, so bumps are labelledjavascript/github_actionswith an underscore, not the hyphenatedgithub-actionsused in the main fleetyards repo.0.xrule matters.wxtis on0.20.x, so a0.20 → 0.21bump is a breaking-class change in the build tool this extension is built with, not a minor.--autois unavailable and PRs can only be merged once checks are genuinely green.mainis protected by a ruleset, not classic protection — required checks areType Check & Test,Build (chrome)andBuild (firefox), plus a merge queue. The classicbranches/main/protectionAPI returns 404 on ruleset-protected branches, which reads as "unprotected" if you do not know to look at/rulesets.The skill also documents the TypeScript 7 situation. #140 (
typescript6.0.3 → 7.0.2) failsType Check & Testbecause TS7 moved the compiler into a native binary and reduced thetypescriptmain export to a version string, sovue-tsccannot run on it.reckoning/reckoningalready encodes this as a permanentignoreblock in itsdependabot.yml; this repo does not, so the PR is reopened every week. The skill flags it and names the fix, but deliberately does not editdependabot.ymlon its own.Docs only — no runtime code changes. 🤖