Skip to content

feat: dependabot-triage skill; drop claude-config submodule#459

Merged
amit-gazal-thenvoi merged 9 commits into
mainfrom
feat/design-an-automation-for-dependabot-prs-INT-973
Jul 23, 2026
Merged

feat: dependabot-triage skill; drop claude-config submodule#459
amit-gazal-thenvoi merged 9 commits into
mainfrom
feat/design-an-automation-for-dependabot-prs-INT-973

Conversation

@amit-gazal-thenvoi

@amit-gazal-thenvoi amit-gazal-thenvoi commented Jul 21, 2026

Copy link
Copy Markdown
Collaborator

Summary

Adds a dependabot-triage skill and reorganizes agent config so the skill lives in a discoverable, repo-local place — which meant unwinding the shared claude-config submodule.

1. dependabot-triage skill

Triage the whole Dependabot queue in one test-gated batch: survey the queue, consolidate every uv bump onto one branch, prove it with the full suite, approve the PRs that pass, and file Linear follow-ups for the rest — so the per-ecosystem open-pull-requests-limit never silently starves new upgrades. Now includes the lessons from an end-to-end run: failure attribution (env/lane/plan vs. real regression), crewai's exact-pin + dev-crewai testing, and a full "Merging the approved set" section (serial uv.lock cascade, main's dismiss-stale-approvals ruleset, and the uv lock --check specifier-drift fix).

Lives at .claude/skills/dependabot-triage/SKILL.md (a Claude project-skill discovery path), so it surfaces as /dependabot-triage.

2. Drop the claude-config submodule

.claude was the shared band-ai/claude-config submodule. To keep the skill repo-local (not leak an SDK-specific skill to every repo), the submodule is removed and its content inlined:

  • Rules inlined into AGENTS.md under a new ## Engineering Rules section (Coding Standards, Error Handling, Git Workflow, Code Quality, Testing, Optional Dependencies, GitHub PR Comments). CLAUDE.md symlinks to AGENTS.md, so both Claude and Codex load them from one file.
  • Dropped the obsolete 06-claude-config-management rule and the now-false "clone with --recurse-submodules" instructions.
  • .gitmodules removed; .claude/settings.local.json kept machine-local (gitignored).

Notes

  • Other repos still using claude-config are unaffected — this only changes this repo's copy.
  • CLAUDE.md → AGENTS.md symlink preserved.

🤖 Generated with Claude Code

Adds a playbook skill for handling the repo's open Dependabot PRs as a single
test-gated batch: survey the queue by ecosystem, consolidate every uv bump onto
one local branch, prove it with the full suite (including crewai in its own
venv), approve the PRs that pass with a signed comment, and leave excluded bumps
open with a Linear follow-up.

Motivated by an a2a-sdk major upgrade that got starved: its bump PR was closed
unmerged, and the uv open-PR limit then saturated with untriaged green PRs, so
Dependabot never re-proposed the newer version. The skill keeps the queue drained
so the per-ecosystem limit can't silently starve future upgrades.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@linear-code

linear-code Bot commented Jul 21, 2026

Copy link
Copy Markdown

INT-973

Base automatically changed from dev to main July 21, 2026 10:03
amit-gazal-thenvoi and others added 2 commits July 21, 2026 16:13
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…relocate skill

- Remove the `claude-config` git submodule (band-ai/claude-config) mounted at
  `.claude`, along with its `.gitmodules` entry.
- Inline its shared rules (`.claude/rules/00-05,07`) into AGENTS.md under a new
  "## Engineering Rules" section. CLAUDE.md symlinks to AGENTS.md, so both
  Claude Code and Codex load them from one file. Dropped the obsolete
  `06-claude-config-management` rule and the now-false "clone with
  --recurse-submodules" instructions.
- Move the dependabot-triage skill from `.github/skills/` (not a discovery path)
  to `.claude/skills/dependabot-triage/` so Claude discovers it as a project
  skill — now repo-local instead of living in the shared submodule.
- Keep `.claude/settings.local.json` machine-local (gitignored).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@amit-gazal-thenvoi amit-gazal-thenvoi changed the title feat: add dependabot-triage skill feat: dependabot-triage skill; drop claude-config submodule (inline rules into AGENTS.md) Jul 23, 2026
amit-gazal-thenvoi and others added 2 commits July 23, 2026 08:58
The rules inlined into AGENTS.md (## Engineering Rules) carry illustrative
python snippets (undefined logger/pytest/api_key/MockDataFactory, etc.). In the
former claude-config submodule these were never executed by pytest-markdown-docs
(submodule files aren't in the main repo's git ls-files); inlined, CI ran them
and 18 fences failed. Mark the 15 in-section python fences `notest` to match
their illustrative intent, matching the repo's Documentation Testing convention.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@amit-gazal-thenvoi amit-gazal-thenvoi changed the title feat: dependabot-triage skill; drop claude-config submodule (inline rules into AGENTS.md) feat: dependabot-triage skill; drop claude-config submodule Jul 23, 2026
@amit-gazal-thenvoi
amit-gazal-thenvoi requested a review from a team July 23, 2026 06:09
- AGENTS.md: align inlined Engineering Rules with the repo — Python 3.11+
  (not 3.10+), and reframe the ruff config as a generic example (repo has no
  [tool.ruff] block) with py311 and the real package name.
- dependabot-triage skill: reference the actual Linear MCP save_issue tool
  instead of a nonexistent create_issue.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

@AlexanderZ-Band AlexanderZ-Band left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Docs/skill PR — no source touched, low risk. Skill content verified accurate against repo (dependabot limits, crewai pin split, uv lock --check trap all match). CI safe: SKILL.md has no python fences and every inlined AGENTS.md python fence is notest.

Four non-blocking nits, all in the inlined AGENTS.md rules. Common root: the inlined generic rules overlap/contradict the file's existing, repo-specific content. Suggest trimming the inlined block to what the top sections lack, or reconciling it to repo reality.

Comment thread AGENTS.md Outdated
Comment thread AGENTS.md Outdated
Comment thread AGENTS.md Outdated
Comment thread AGENTS.md Outdated

@AlexanderZ-Band AlexanderZ-Band left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

approved with coments

Address PR review nits: the inlined generic claude-config rules overlapped
or contradicted the file's existing repo-specific sections. Drop the
generic Coding Standards (dup of ## Coding Standards, incl. the stale
Context7 line), Code Quality (dup of ## Commands), Testing Conventions
(its tests/ tree wrongly showed tests/unit/), and Optional Dependencies
(used a bogus thenvoi/mypackage name) subsections. Keep only what the
sections above lack: Error Handling, Git Workflow, and the GitHub PR
inline-comment recipe.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
amit-gazal-thenvoi and others added 2 commits July 23, 2026 09:43
The provenance note narrated what was removed and why, which is PR/git
history — not something a reader of the rules needs. Comments should
describe the content as it is.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Error Handling, Git Workflow, and GitHub PR Inline Comments now stand as
top-level sections instead of nesting under an Engineering Rules wrapper.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@amit-gazal-thenvoi
amit-gazal-thenvoi merged commit 4b06e43 into main Jul 23, 2026
14 checks passed
@amit-gazal-thenvoi
amit-gazal-thenvoi deleted the feat/design-an-automation-for-dependabot-prs-INT-973 branch July 23, 2026 06:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants