agentleFS
Kairos-commuKairos-commu/socle/skills/check/SKILL.md

check

Skill2 starsChanged 23 days agoMITView on GitHub

Vérification de régression post-modification, pilotée par .claude/check.json. Utiliser après toute modification de code, avant de considérer une tâche terminée.

80 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use daily-arxiv, exp-eval and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • LambenthanSkill

    daily-arxiv

    每日从 arXiv 拉取新论文,过滤相关性,auto-ingest 高优先级论文,检测 SOTA 更新

    Also in 5 projects that use this

  • LambenthanSkill

    exp-eval

    实验判决门:Review LLM 独立评判实验结果 → 4 种判决路径 → 自动更新 claims confidence、ideas status、graph edges

    Also in 5 projects that use this

  • JuliusBrusseeSkill

    backprop

    Bug → spec protocol. When a bug is found or a test fails, trace the cause, decide whether a new §V invariant would catch recurrence, append to §B. This is the one non-obvious thing SDD does that plan-then-execute doesn't. Triggers on test failure, bug report, post-mortem, or explicit user ask.

    Also in 4 projects that use this

  • skyllwtSkill

    exp-pilot-eval

    Pilot result evaluation — read pilot results, apply success criteria, update idea page (pilot_result, failure_reason if failed), generate PILOT_VERDICT_REPORT. Called by /ideate Phase 5 after /exp-pilot-run.

    Also in 4 projects that use this

  • skyllwtSkill

    exp-pilot-run

    Pilot experiment execution — read Pilot Spec YAML, write pilot code, run experiment(Confirm with the user before operation and require the applicant to conduct manual inspection), return results. Called by /ideate Phase 5. Does NOT modify wiki pages or judge pass/fail.

    Also in 4 projects that use this

  • +6 more from Lambenthan
  • +1 more from skyllwt

The file

Files
SKILL.md

/check — garde de régression

Exécuter chaque étape dans l'ordre, sans en sauter. Une étape sans configuration dans le manifeste est annoncée comme sautée, jamais silencieusement omise : un projet sans typecheck est un fait à rapporter, pas un vide à ignorer.

Étape 0 — Lire le manifeste

Lire .claude/check.json. S'il n'existe pas : le signaler, proposer le skill bootstrap, et exécuter ce qui est déductible du package.json (ou équivalent) en le disant explicitement.

Le manifeste porte les étapes du projet, leurs commandes, leurs attendus, et les régressions connues à grepper. Cf. templates/check.schema.json du socle pour sa forme.

Étape 1 — Les commandes de steps, dans l'ordre déclaré

Pour chaque entrée de steps :

  1. lancer cmd ;
  2. comparer à expect ;
  3. si counter est présent, comparer le nombre obtenu à la valeur attendue.

La dérive d'un compteur est une alerte, pas un détail. Si le nombre de tests a bougé sans qu'un test ait été consciemment ajouté ou retiré, le signaler immédiatement et ne pas conclure au succès : c'est le signe qu'un test a été désactivé, renommé ou perdu par un merge.

Ne jamais faire taire un avertissement de lint par réflexe. Les règles de code mort (no-unused-vars, assignations inutiles) ont une valeur de détection réelle — vérifier si le signal est légitime avant de le supprimer.

Étape 2 — Régressions connues (grep ciblé sur le diff)

Pour chaque entrée de regressions du manifeste, grepper le diff (fichiers modifiés, commités ou non — pas tout le dépôt) et signaler chaque correspondance avec le why associé.

Ces motifs viennent du journal d'incidents : chaque incident qui peut se reproduire mécaniquement mérite une ligne ici. Un projet dont la liste est vide est un projet dont les incidents n'ont encore rien produit de réutilisable.

Signaler, ne pas corriger en silence — certaines correspondances sont des faux positifs légitimes, documentés dans le why.

Étape 3 — Cohérence du registre

node <socle>/bin/check-registry.mjs

Sauté si le manifeste n'a pas de section registry. Sinon, un échec ici bloque : un fichier créé et jamais documenté est exactement ce que le registre existe pour empêcher.

Étape 3b — Contexte au lancement

node <socle>/bin/check-context.mjs

Sort en 1 si le CLAUDE.md racine dépasse 200 lignes, si un document est chargé deux fois (import inconditionnel + règle à paths:) ou si le total chargé à chaque session dépasse le budget (context.maxBytes du manifeste, 60 000 octets par défaut). Ce n'est pas du code qui régresse, c'est la capacité de la prochaine session à suivre les règles — cf. doctrine/contexte.md. Toujours exécuté : le mécanisme n'a besoin d'aucune configuration.

Étape 4 — Vérification visuelle ou fonctionnelle (si l'UI est touchée)

Si le diff touche l'interface et que visual est configuré dans le manifeste, suivre la procédure qui y est déclarée (skill de lancement dédié, tests e2e, capture d'écran).

Ne jamais conclure sur un raisonnement statique DOM/CSS pour un changement visuel : une règle d'auteur qui bat une règle par défaut, un élément hors flux, un z-index — rien de tout cela ne se déduit à la lecture.

Ne jamais lancer le serveur de développement de l'utilisateur pour vérifier : sa session peut tourner en parallèle. Utiliser l'instance isolée déclarée dans le manifeste.

Étape 5 — Harnais spécifique (si le domaine sensible est touché)

Si sensitive est déclaré et que le diff touche l'un de ses chemins, lancer les commandes associées. Typiquement : un harnais de mesure pour tout ce dont le comportement n'est pas déterministe (un modèle, un service externe). Une indisponibilité est signalée, non bloquante — mais elle doit apparaître dans le rapport, jamais être passée sous silence.

Pour un comportement non déterministe, un essai ne distingue pas un correctif d'une coïncidence : comparer un taux sur N passes à la mesure précédente.

Étape 6 — Rapport

## Régression Guard — <date>

Étape 1 — <nom> : ✅ / ❌   <sortie si échec>
Étape 2 — Régressions   : ✅ / ⚠️  <correspondances + why>
Étape 3 — Registre      : ✅ / ❌ / ⏭️ sauté (raison)
Étape 3b — Contexte     : ✅ / ❌   <racine N/200 lignes, total N octets, doublons>
Étape 4 — Visuel        : ✅ / ❌ / ⏭️ sauté (raison)
Étape 5 — Harnais       : ✅ / ❌ / ⏭️ sauté (raison)

Verdict : PASS / FAIL / WARNING

Règles

  • Aucune étape sautée en silence. Sauté ⇒ dit, avec sa raison.
  • Verdict binaire. « Globalement bon » n'est pas un verdict.
  • Le rapport cite les sorties réelles, jamais un résumé de ce qu'elles devraient être (cf. doctrine/verification.md : [code-verified] vs [doc-only]).
  • FAIL n'est pas un échec de la tâche, c'est l'information qui manquait pour la finir.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.