Repository navigation
feat(just): add a check-layers recipe that runs just check on each layer of a stack #51
Copy link
Copy link
Closed
Labels
1-ready-for-agentValidated work, sufficiently specified for an autonomous agentValidated work, sufficiently specified for an autonomous agent2-type:taskSupporting work such as maintenance, documentation, refactoring, or verificationSupporting work such as maintenance, documentation, refactoring, or verification3-pty:p1High priority; takes precedence over ordinary planned workHigh priority; takes precedence over ordinary planned work4-epic:memberBelongs to an epic identified by the parent relationshipBelongs to an epic identified by the parent relationship
Description
The problem (CMO)
Agent role: MAIN dans s3. COD1 lançait les vérifications
Area: Automated checks
Problem Statement: En tant qu'agent qui travaille dans pascalandy/nicely, je veux une recette just qui lance just check sur chaque couche d'une pile, pour que chaque session vérifie les mêmes versions de la même façon, sans script recréé à la main
Analogy
Chaque fois qu'on veut vérifier tous les étages d'un immeuble, on redessine le plan de l'ascenseur sur une serviette de table. Un jour, le plan pointe vers un étage qui n'existe plus.
- Ce qui devrait arriver : l'immeuble a un ascenseur, et on appuie sur un bouton
- Ce qui est arrivé pendant la pile M01+M02 : deux scripts copiés d'une passation à l'autre devaient être recréés à chaque fois, et l'un d'eux visait un dossier disparu
What we saw
- Le plan de passation contenait deux scripts shell, un pour Linux et un pour macOS, avec la consigne « recréez-les : /tmp est en tmpfs »
- Le script macOS faisait un
git fetchdans un clone qui avait changé de dossier. L'échec était silencieux et la boucle continuait. Après le prochain push, il aurait testé les anciennes versions - Le worktree temporaire de vérification avait disparu sur les deux machines. COD1 a dû le recréer
- Les deux scripts écrivaient le log de chaque couche dans le même fichier. Le seul échec observé (
extension_cancel.txtar:59, une fois sur macOS) a perdu son log, et sa cause reste inconnue
What exists today
just check vérifie la copie de travail courante, une seule couche. Aucune recette ne parcourt les couches d'une pile.
Start, Stop, Continue (FMO)
- Start: ajouter une recette
just check-layers. Elle crée un worktree détaché temporaire, y extrait chaque branche degh stack viewde bas en haut, lancejust check, garde un log par couche et affichebranche SHA ok|FAIL. Elle sort en échec si une couche échoue. Sur macOS, on lance la même recette par SSH depuis un clone de l'autre machine - Stop: recopier des scripts de vérification dans les passations et les recréer dans
/tmp - Continue:
just checketjust signoffrestent la vérification d'une couche et du merge
How we'll know it works
- Today: une passation contient un script à recréer, et un
fetchqui échoue ne fait pas échouer la boucle - After the change: sur une pile de 10 couches,
just check-layersaffiche 10 lignesokavec les SHA deorigin, et un log par couche reste après un échec - Nothing else changes:
just checksur une seule couche donne le même résultat qu'avant
👨🏻🍳 For the agent
👨🏻🍳 Details
- Ancien schéma : pour chaque branche,
git checkout -q --detach "$b", puisjust check > log-<branche>.log, puisecho "$b $(git rev-parse --short HEAD) ok|FAIL" - Faire un
git fetchd'abord et le faire échouer pour de vrai ; vérifier queHEADégaleorigin/<branche> - Nettoyer entre deux couches (
git checkout -- . && git clean -fd testdata), pour qu'aucun fichier d'une couche ne passe à la suivante - Mettre le worktree hors de
/tmp, par exemple sous le cache de l'utilisateur, parce que macOS vide/tmpet que/tmpest en tmpfs sur Linux. Untraple retire à la fin - Une couche peut avoir plusieurs commits, par exemple une PR de docs : il faut parcourir les branches, pas les commits
- Rayon d'impact :
justfileseulement, plus une ligne dansAGENTS.mdà la section Work on a card
by Opus-5.5 via Claude Code
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
1-ready-for-agentValidated work, sufficiently specified for an autonomous agentValidated work, sufficiently specified for an autonomous agent2-type:taskSupporting work such as maintenance, documentation, refactoring, or verificationSupporting work such as maintenance, documentation, refactoring, or verification3-pty:p1High priority; takes precedence over ordinary planned workHigh priority; takes precedence over ordinary planned work4-epic:memberBelongs to an epic identified by the parent relationshipBelongs to an epic identified by the parent relationship
Activity
gh stackse vérifie et se signe sans script ni contournement #53🧑💻 chore: just: add check-layers to check each layer of a stack
🧑💻 chore: just: add check-layers to check each layer of a stack
🧑💻 chore: just: add check-layers to check each layer of a stack