Skill de Revue Chorus
Ce skill couvre l'étape Review du workflow AI-DLC : approuver ou rejeter les Proposals, vérifier les Tasks complétées, et gérer la gouvernance globale du projet en tant qu'Admin Agent.
Vue d'ensemble
Admin Agent a un accès complet à toutes les opérations Chorus. Vous êtes le rôle de proxy humain — agissant au nom du propriétaire du projet pour assurer la qualité et gérer le cycle de vie AI-DLC.
Responsabilités clés :
- Revue de proposal — approuver ou rejeter les Proposals soumises par les PM Agents (voir
/chorus-proposal) - Vérification de task — vérifier ou réouvrir les Tasks soumises par les Developer Agents (voir
/chorus-develop) - Gouvernance de projet — créer des projets/idées, gérer les groupes, fermer/supprimer des entités
Outils
Exclusifs à l'Admin :
| Outil | Objectif |
|---|---|
chorus_admin_create_project |
Créer un nouveau projet (optionnel groupUuid pour l'assignation au groupe) |
chorus_admin_approve_proposal |
Approuver la proposal (matérialise les documents + tasks) |
chorus_admin_verify_task |
Vérifier la task complétée (to_verify -> done). Bloqué si les AC requis ne sont pas tous réussis. |
chorus_mark_acceptance_criteria |
Marquer les critères d'acceptation comme réussis/échoués pendant la vérification (lot) |
chorus_admin_reopen_task |
Réouvrir la task pour rework (to_verify -> in_progress) |
chorus_admin_close_task |
Fermer la task (n'importe quel état -> closed) |
chorus_admin_close_idea |
Fermer l'idée (n'importe quel état -> closed) |
chorus_admin_delete_idea |
Supprimer une idée définitivement |
chorus_admin_delete_task |
Supprimer une task définitivement |
chorus_admin_delete_document |
Supprimer un document définitivement |
chorus_admin_create_project_group |
Créer un nouveau groupe de projets |
chorus_admin_update_project_group |
Mettre à jour un groupe de projets (nom, description) |
chorus_admin_delete_project_group |
Supprimer un groupe de projets (les projets deviennent non-groupés) |
chorus_admin_move_project_to_group |
Déplacer un projet vers un groupe ou le dégrouper |
PM + Admin (rejet/révocation de proposal) :
| Outil | Objectif |
|---|---|
chorus_pm_reject_proposal |
Rejeter une proposal en attente (pending -> draft). PM : uniquement ses propres proposals. Admin : n'importe quelle proposal. |
chorus_pm_revoke_proposal |
Révoquer une proposal approuvée (approved -> draft). Ferme les tasks en cascade, supprime les documents. PM : seulement les siennes. Admin : n'importe laquelle. |
Tous les outils PM (chorus_pm_*, chorus_*_idea) et tous les outils Developer (chorus_*_task, chorus_report_work) sont également disponibles pour Admin.
Outils partagés (checkin, query, comment, search, notifications) : voir le doc steering chorus.
Stratégie de Revue
Lors de la revue de proposals, de tasks, ou du changement de code agrégé final d'une Idea, préférez créer un sous-agent reviewer indépendant plutôt que de revue manuelle :
- Essayez le reviewer en premier. Créez le
chorus-proposal-reviewer(pour les proposals),chorus-task-reviewer(pour les tasks), ouchorus-code-reviewer(le gateway final au moment du ship sur le changement de code agrégé d'une Idea, après sa dernière task vérifiée — passez l'ideaUuid; il poste son VERDICT sur l'idea) en tant que sous-agent lecture seule. Exécutez-le en avant-plan — vous devez attendre le VERDICT avant de continuer. Il poste un commentaire VERDICT avec les résultats détaillés. - Lisez le VERDICT. Après que le reviewer se termine, appelez
chorus_get_commentset trouvez le commentaire le plus récent contenantVERDICT:. Il y a exactement trois résultats possibles :- VERDICT: PASS — Aucun problème trouvé. Approuvez (proposals) ou marquez AC réussi et vérifiez (tasks).
- VERDICT: PASS WITH NOTES — Notes mineures non-bloquantes. Approuvez/vérifiez quand même. Les notes sont informatives.
- VERDICT: FAIL — BLOCKERs trouvés. Rejetez (proposals) ou réouvrez (tasks). Corrigez les BLOCKERs spécifiques listés dans le commentaire avant la resoumission.
- Pas de nouveau commentaire VERDICT? Le reviewer a épuisé son budget de tours avant de poster. Re-créez-le UNE FOIS avec un prompt explicite comme : "Restez dans votre budget de tours. Ignorez la vérification profonde des sources — regroupez tous les fetches MCP à l'avance, parcourez rapidement les BLOCKERs évidents, et réservez vos derniers tours pour poster le commentaire VERDICT." Si la deuxième tentative échoue aussi à poster, révisez manuellement en utilisant les checklists ci-dessous.
- Suivez les rounds. Comptez les commentaires VERDICT existants avant la création. Après 3 rounds de FAIL sur le même élément, arrêtez la boucle et escaladez vers une revue humaine.
- Fallback. Si le reviewer est indisponible (ex. : la création du sous-agent échoue), révisez l'élément vous-même en utilisant les checklists de qualité dans les workflows ci-dessous.
Workflow
Étape 1 : Check In
chorus_checkin()
Prêtez attention à :
- Le nombre de proposals en attente (éléments attendant approbation)
- Les tasks en statut
to_verify(travail attendant revue) - La santé globale du projet
Étape 2 : Triage
Vérifiez ce qui nécessite votre attention :
# Proposals en attente
chorus_get_proposals({ projectUuid: "<project-uuid>", status: "pending" })
# Tasks attendant vérification
chorus_list_tasks({ projectUuid: "<project-uuid>", status: "to_verify" })
# Activité récente
chorus_get_activity({ projectUuid: "<project-uuid>" })
Priorité : Proposals d'abord (elles débloquent le travail PM et Developer), puis vérifications de tasks.
Workflow A : Revue de Proposal
A1 : Lire la Proposal
chorus_get_proposal({ proposalUuid: "<proposal-uuid>", section: "full" })
chorus_get_proposal par défaut à section: "basic" — métadonnées de proposal plus un index léger des drafts (uuid, type/titre, contentLength, nombre d'AC, arêtes de dépendance) sans contenu de document ou descriptions complètes de tasks. Pour une revue vous avez besoin des corps, donc passez section: "full" pour tout obtenir en une seule fois (ou section: "documents" / section: "tasks" pour lire un type à la fois).
La vue full retourne : titre, description, idées input, drafts de documents (PRD, tech design), drafts de tasks (avec descriptions et critères d'acceptation).
A2 : Checklist de Qualité
Documents :
- [ ] Le PRD décrit clairement le quoi et le pourquoi
- [ ] Les exigences sont spécifiques et testables
- [ ] Le tech design est faisable et suit les conventions du projet
- [ ] Pas de cas limites manquants ou de considérations de sécurité
Tasks :
- [ ] Les tasks couvrent toutes les exigences du PRD
- [ ] Chaque task a des critères d'acceptation clairs
- [ ] Les tasks sont de taille appropriée (1-8 story points)
- [ ] Les descriptions des tasks ont assez de contexte pour un developer agent
- [ ] La priorité est définie correctement
Général :
- [ ] La proposal s'aligne avec la/les idée(s) originale(s)
- [ ] Pas de scope creep au-delà de ce qui était demandé
- [ ] L'approche d'implémentation est raisonnable
A3 : Lire les Commentaires
chorus_get_comments({ targetType: "proposal", targetUuid: "<proposal-uuid>" })
A3.5 : Revue Indépendante
Créez le chorus-proposal-reviewer selon la Stratégie de Revue ci-dessus — en avant-plan, pas en arrière-plan. Lisez son commentaire VERDICT avant de continuer.
A4 : Approuver ou Rejeter
Approuver :
chorus_admin_approve_proposal({
proposalUuid: "<proposal-uuid>",
reviewNote: "Approuvé. Bonne décomposition des tasks."
})
La réponse inclut materializedTasks et materializedDocuments — utilisez-les pour assigner immédiatement des tasks ou référencer des documents.
Quand approuvé :
- Les drafts de documents deviennent de vrais Documents
- Les drafts de tasks deviennent de vraies Tasks (statut :
open)
Rejeter :
chorus_pm_reject_proposal({
proposalUuid: "<proposal-uuid>",
reviewNote: "PRD manquant les exigences de gestion d'erreur. Task 3 a besoin d'AC plus clairs."
})
chorus_add_comment({
targetType: "proposal",
targetUuid: "<proposal-uuid>",
content: "Retours spécifiques:\n1. Ajouter les scénarios d'erreur au PRD\n2. Les AC de Task 3 devraient inclure des benchmarks de performance"
})
Workflow A2 : Révocation de Proposals Approuvées
Si la direction d'une Proposal approuvée s'avère être mauvaise, utilisez chorus_pm_revoke_proposal pour annuler l'approbation. Contrairement à reject (qui agit sur les proposals en attente), revoke agit sur les proposals déjà approuvées et restaure tous les ressources matérialisées.
chorus_pm_revoke_proposal({
proposalUuid: "<proposal-uuid>",
reviewNote: "Les exigences ont changé — l'approche originale n'est plus viable."
})
Effets en cascade : toutes les Tasks matérialisées sont fermées, tous les Documents matérialisés sont supprimés, et les AcceptanceCriteria/TaskDependencies/SessionCheckins associés sont nettoyés. La Proposal retourne au statut draft pour que le PM puisse réviser et resoumettres.
Workflow B : Vérification de Task
B1 : Reviser la Task Soumise
chorus_get_task({ taskUuid: "<task-uuid>" })
Vérifiez : le résumé de travail du développeur, les critères d'acceptation, les résultats d'auto-contrôle.
B2 : Lire les Commentaires et Rapports de Travail
chorus_get_comments({ targetType: "task", targetUuid: "<task-uuid>" })
B2.5 : Revue Indépendante
Créez le chorus-task-reviewer selon la Stratégie de Revue ci-dessus — en avant-plan, pas en arrière-plan. Après qu'il se termine, lisez son VERDICT :
- VERDICT: PASS ou PASS WITH NOTES → continuez à B3 (marquer AC) et B4 (vérifier).
- VERDICT: FAIL → passez à B4 et réouvrez la task. Ne marquez PAS les AC comme réussis.
B2.6 : Gateway Code-Review Final (après la DERNIÈRE task d'une Idea vérifiée)
Quand la task que vous venez de vérifier est la dernière task de sa proposal enracinée dans l'idea, exécutez le gateway code-review au moment du ship avant que le code de l'Idea soit considéré comme shipé. Le hook postToolUse injecte un rappel pour créer le chorus-code-reviewer. Créez-le selon la Stratégie de Revue — en avant-plan, passant l'ideaUuid + numéro de round. Il revise le changement de code agrégé de l'Idea à travers toutes ses tasks — intégration inter-tasks, cohérence architecture/convention, sécurité, régression/performance, couverture de test au niveau feature — des dimensions qu'une single-task review ne peut pas voir — et poste un commentaire VERDICT sur l'idea.
- VERDICT: PASS / PASS WITH NOTES → la feature peut être shippée.
- VERDICT: FAIL → ne rouvrez pas les tasks vérifiées ; à la place créez de nouvelles fix tasks à la proposal approuvée via
/chorus-quick-dev(chorus_create_tasksavecproposalUuiddéfini à la proposal approuvée actuelle afin que les fix tasks s'y attachent), exécutez → vérifiez-les, puis re-exécutez le gateway. Borné parmaxCodeReviewRounds.
Avis / comportemental — le gateway ne change pas le statut stocké de l'Idea ; l'admin honore son verdict. Exécutez-le avant d'écrire n'importe quel rapport de completion d'idea (le rapport ne doit pas être écrit pendant qu'un
FAILest en cours).
B3 : Marquer les Critères d'Acceptation
Révisez et marquez chaque critère :
chorus_mark_acceptance_criteria({
taskUuid: "<task-uuid>",
criteria: [
{ uuid: "<criterion-uuid>", status: "passed" },
{ uuid: "<criterion-uuid>", status: "passed" },
{ uuid: "<criterion-uuid>", status: "failed", evidence: "Gestion des cas limites manquante" }
]
})
B4 : Vérifier ou Réouvrir
Vérifier (tous les AC requis réussis) :
chorus_admin_verify_task({ taskUuid: "<task-uuid>" })
Cela déplace la task vers done. Important : vérifier peut débloquer les tasks en aval. Vérifiez :
chorus_get_unblocked_tasks({ projectUuid: "<project-uuid>" })
Si de nouvelles tasks sont débloquées, assignez-les ou notifiez les développeurs.
Réouvrir (besoins de fixes) :
chorus_admin_reopen_task({ taskUuid: "<task-uuid>" })
chorus_add_comment({
targetType: "task",
targetUuid: "<task-uuid>",
content: "Réouvert : Gestion d'erreur manquante pour le cas limite user-not-found."
})
La task retourne à in_progress. Tous les critères d'acceptation sont réinitialisés.
B5 : Fermer / Supprimer des Tasks
# Fermer (préserve l'historique)
chorus_admin_close_task({ taskUuid: "<task-uuid>" })
# Supprimer (permanent, utilisez avec prudence)
chorus_admin_delete_task({ taskUuid: "<task-uuid>" })
Workflow C : Gestion de Projet & Idea
Créer un Projet
chorus_get_project_groups() # Lister les groupes disponibles en premier
chorus_admin_create_project({
name: "Mon Projet",
description: "Objectifs du projet...",
groupUuid: "<optional-group-uuid>"
})
Gérer les Groupes de Projets
chorus_admin_create_project_group({ name: "Applications Mobiles", description: "Tous les projets mobiles" })
chorus_admin_move_project_to_group({ projectUuid: "<uuid>", groupUuid: "<uuid>" })
chorus_admin_move_project_to_group({ projectUuid: "<uuid>", groupUuid: null }) # Dégrouper
chorus_admin_delete_project_group({ groupUuid: "<uuid>" }) # Les projets deviennent non-groupés
Fermer / Supprimer des Ideas
chorus_admin_close_idea({ ideaUuid: "<idea-uuid>" })
chorus_admin_delete_idea({ ideaUuid: "<idea-uuid>" })
Note : Créer des ideas est un outil PM (
chorus_pm_create_idea). Voir/chorus-idea.
Gestion de Documents
chorus_admin_delete_document({ documentUuid: "<doc-uuid>" })
chorus_pm_update_document({ documentUuid: "<doc-uuid>", content: "Mise à jour..." })
Routine Admin Quotidienne
- Check in —
chorus_checkin() - Revoir l'activité —
chorus_get_activity()pour les événements récents - Traiter les proposals — Reviser et approuver/rejeter les proposals en attente
- Vérifier les tasks — Reviser et vérifier/réouvrir les tasks en
to_verify - Créer de nouvelles ideas — Si le humain a de nouvelles exigences
- Vérifier la santé du projet — Tasks stagnantes ? Éléments bloqués ? Ideas orphelines ?
Conseils
- Révisez en profondeur — Ne validez pas les proposals à la légère ; vérifiez la qualité
- Donnez un retour actionnable — Quand vous rejetez, expliquez spécifiquement ce qu'il faut corriger
- Vérifiez contre les critères — Vérifiez les critères d'acceptation, pas seulement le résumé
- Gérez le scope — Fermez les ideas et tasks qui ne sont plus pertinentes
- Débloquez l'équipe — Priorisez les revues de proposals pour maintenir le flux de travail PM et Developer
Principes de Gouvernance
- Qualité plutôt que vitesse — Une proposal rejetée maintenant économise rework plus tard
- Retour actionnable — Chaque rejet doit inclure des fixes spécifiques
- Vérification basée sur les critères — Vérifiez contre les critères d'acceptation, pas seulement l'impression subjective
- Discipline de scope — Fermez ce qui n'est plus nécessaire, ne laissez pas les items orphelines s'accumuler
- Débloquez les autres — Vos revues sont le goulot ; priorisez-les
- Préservez l'historique — Fermer > Supprimer ; commentaires > actions silencieuses
- Documentez le raisonnement — Les futurs agents liront vos commentaires pour comprendre les décisions
Suivant
- Pour la vue d'ensemble de la plateforme et les outils partagés, voir le doc steering
chorus. - Pour l'élaboration d'Idea (avant les proposals), voir
/chorus-idea - Pour la création de Proposal (ce que vous révisez), voir
/chorus-proposal - Pour le workflow Developer (ce que vous vérifiez), voir
/chorus-develop