Verify code change
Skill sharklandy/claude-code-starter-kit/skills/process/verify-code-change
Verify any non-trivial code change before declaring it done: build, existing test suite, and linter must all pass. Trigger after any edit that touches source files, regardless of language or stack.From its SKILL.md
npx -y skills add sharklandy/claude-code-starter-kit --skill verify-code-changeAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.9 KB, 734 tokens by cl100k_base, as published. Nobody here has run it
Vérifier une modification de code (générique, tout langage)
Ne jamais déclarer une modification de code terminée sur la seule base d'une édition réussie ou d'une lecture du code. Vérifier systématiquement avant de rendre la main :
- Détecter les commandes pertinentes avant de deviner. Lire les
fichiers de configuration du projet pour identifier les commandes
réelles plutôt que de supposer une convention :
package.json(scripts.build,scripts.test,scripts.lint)Makefile(ciblesbuild,test,lint)pyproject.toml/setup.cfg(section[tool.pytest],[tool.ruff], etc.)Cargo.toml,go.mod,pom.xml/build.gradle, ou tout autre fichier de build spécifique au langage détecté. Si plusieurs candidats existent, préférer celui utilisé par la CI du projet (.github/workflows/,.gitlab-ci.yml, etc.) s'il est présent, pour rester cohérent avec ce qui est réellement vérifié en intégration continue.
- Build/compile : lancer la commande de build ou de typecheck détectée. Zéro erreur attendue.
- Suite de tests existante : lancer la commande de test détectée. 100% des tests déjà présents doivent rester au vert — un nouveau test qui échoue est acceptable temporairement pendant le développement, mais un test préexistant qui régresse ne l'est jamais.
- Linter : lancer la commande de lint détectée. Zéro nouveau warning introduit par le changement (les warnings préexistants et non liés au changement peuvent être signalés séparément, pas bloqués).
- Si une étape échoue, corriger et reprendre depuis l'étape 2 — ne jamais rendre la main sur un travail partiellement vérifié.
Gotchas
- Un
package.jsonpeut définir plusieurs scripts qui se ressemblent (test,test:unit,test:ci) — vérifier lequel est réellement utilisé par la CI avant de vous fier au premier trouvé, sous peine de valider localement un état que la CI rejettera. - L'absence d'erreur de build ne garantit rien sur un langage à typage dynamique (Python, JavaScript) : ne jamais sauter l'étape des tests sous prétexte que le build/l'import a réussi.
- Les commandes réelles de build/test/lint d'un projet (y compris les
configurations multiples d'un monorepo) sont apprises et consignées
par le subagent
test-runnerdans sa mémoire de projet (.claude/agent-memory/test-runner/) ; à défaut, les lire dans la configuration de CI du projet plutôt que de les deviner par convention.
What ships with it: 1 file
1.3 KB alongside SKILL.md
evals/
- evals.json1.3 KB