feat: add capability-matrix maintenance skill - #73
Conversation
Adds a repo-local Claude Code skill (.claude/skills/capability-matrix/) that helps contributors keep capabilities/*.yaml and specs/ internally consistent: semantic duplicate detection, naming-convention drift within a group, grouping fit, spec-file suggestions, and platform-scope notes. It's advisory only and defers to `npm run validate` for anything mechanical. Carves out .claude/skills/ from the repo-wide .claude/ gitignore rule so committed skills are tracked while session/worktree state stays ignored. Supersedes the CI-bot / PR-review-comment scope in SDK-994.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughSummary by CodeRabbit
WalkthroughThe change adds the Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.claude/skills/capability-matrix/SKILL.md:
- Around line 20-32: Update the capability-matrix validation workflow trigger so
pull requests modifying specs/** also run the validator job. Add specs/** to the
paths in validate-capabilities.yml, ensuring spec-only changes cannot bypass the
mandatory validation check.
- Around line 29-31: Update the capability-matrix path guidance so spec
directories use the feature ID namespace: place an ID such as auth.mfa.challenge
under auth/mfa/, regardless of the optional group value. Rename the path
placeholders to <group_namespace> and <method_stem>, and preserve the existing
validation requirements.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro Plus
Run ID: ff30d5a6-1a54-440f-ab3f-8eaaa0d7da8b
📒 Files selected for processing (2)
.claude/skills/capability-matrix/SKILL.md.gitignore
Two review findings on the capability-matrix skill, both still valid: - validate-capabilities.yml's PR trigger didn't include specs/**, so a spec-only change (e.g. a typo'd path that orphans a spec) could merge without ever running the validator that catches exactly that. - SKILL.md described spec paths as specs/<area>/<group>/<method>.md, implying the current `group` field. The directory is actually derived from the feature id's own segments (<group_namespace>/<method_stem> per the schema), which can now diverge from `group` since SDK-1439 regrouped several features without renaming their ids. Reworded to match the schema's own terminology and call out the divergence.
Summary
.claude/skills/capability-matrix/SKILL.mdthat helps contributors keepcapabilities/*.yamlandspecs/internally consistent: semantic duplicate detection, naming-convention drift within a group, grouping fit, spec-file suggestions, and platform-scope notes. It's advisory only — always defers tonpm run validatefor anything mechanical (schema, exact duplicate IDs, orphaned specs)..claude/gitignore rule (.claude/* + !.claude/skills/) so committed skills are tracked while session/worktree state stays ignored.Ran the skill as a full audit against the current matrix; findings are tracked separately in SDK-1439 since they're judgment calls for area owners, not part of this PR.
Test plan
npm run validatepasses (mechanical checks unaffected)git check-ignore .claude/skills/capability-matrix/SKILL.mdconfirms the file is tracked, other.claude/state stays ignoredcapabilities/*.yamlas a manual audit to confirm the instructions produce sensible, non-filler output