Skip to content

[doctor] missing_tool_artifacts sur les sous-roots d'un workspace : comportement voulu ou faux positif ? #14

Description

@SmilosNIJ

Contexte

En mode workspace, Studio appelle diagnose(root) sur le sous-root actif (ex. clients/dupont-conseil), pas sur la racine du workspace. Si ce sous-root n'a pas de CLAUDE.md, Doctor émet missing_tool_artifacts.

Reproduire avec exemples/agence-multi-clients :

node .ai/base.mjs studio --root exemples/agence-multi-clients

→ signal missing_tool_artifacts sur clients/dupont-conseil et clients/martin-digital, même si exemples/agence-multi-clients/CLAUDE.md existe.

Question de spec

La doc (docs/guides/connecter-votre-outil.md, docs/start/installer-claude-code.md) dit que CLAUDE.md doit être «à la racine du dossier ouvert dans l'outil». Dans un workspace, ce dossier est la racine du workspace — pas chaque sous-root.

Est-ce qu'un sous-root d'un workspace doit porter son propre CLAUDE.md ?

  • Si oui : base init devrait le proposer pour chaque sous-root (aujourd'hui il ne le fait pas), et le signal Doctor est légitime.
  • Si non : Doctor devrait, en mode workspace, ne vérifier missing_tool_artifacts qu'à la racine du workspace, et émettre silence sur les sous-roots.

Code concerné

  • tools/doctor/diagnose.mjs:187 — vérifie paths.has("CLAUDE.md") sur le root passé, sans savoir s'il est sous-root d'un workspace.
  • tools/studio/server.mjs:241diagnose(rootOf()) : rootOf() retourne le sous-root actif.

Suggestion

Clarifier dans la spec (FR-DOCTOR-001 ou FR-INIT-002) si missing_tool_artifacts s'applique aux sous-roots d'un workspace, et aligner Doctor + base init en conséquence. Si la réponse est «non», supprimer le signal sur les sous-roots et documenter que le CLAUDE.md de la racine du workspace suffit.


Découvert en parcourant le tutoriel Équipe Module 2 sur exemples/agence-multi-clients.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingcôté mainteneursLa prochaine action est côté mainteneurs (décision, correctif)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions