mcp: clean tracked artifacts and document rollout

This commit is contained in:
MaksTinyWorkshop
2026-03-31 15:10:38 +02:00
parent fc0bec0e2b
commit 547ffb8e6f
13 changed files with 133 additions and 10 deletions

View File

@@ -2,12 +2,28 @@
Serveur MCP **sidecar** pour brancher la base Lead_tech dans un workflow BMAD sans remplacer BMAD.
Etat actuel : **prototype exploitable** pour un rollout advisory.
## Objectif
- BMAD garde l'orchestration (story, roles, statut, handoff).
- Ce serveur apporte des outils de guidance et de gate qualite.
- Ecriture controlee: uniquement `95_a_capitaliser.md` et memoire projet (optionnel, avec flag).
## Ce que le serveur fait bien aujourd'hui
- exposer la base Lead_tech en `resources` MCP lisibles par un agent
- retrouver les patterns/risques les plus probables pour une story
- appliquer quelques gates transverses deja stabilises dans Lead_tech
- encapsuler la capitalisation dans un flux plus propre que l'edition manuelle
## Ce qu'il ne faut pas lui demander pour l'instant
- remplacer la lecture humaine complete des docs prioritaires
- faire du ranking semantique avance
- ecrire directement dans `knowledge/`
- prendre la decision finale de merge, de done, ou de capitalisation
## Tools exposes
- `get_guidance(domain, task_type, story_text?, keywords?, max_items?)`
@@ -24,6 +40,29 @@ Serveur MCP **sidecar** pour brancher la base Lead_tech dans un workflow BMAD sa
- `leadtech://capitalisation/pending`
- `leadtech://projects/conf`
- `leadtech://knowledge/{domain}/{bucket}/{slug}`
- `leadtech://global/architecture`
- `leadtech://global/debug`
- `leadtech://global/conventions`
## Design de securite
- lecture libre sur les fichiers Lead_tech exposes
- ecriture desactivee par defaut
- aucune ecriture autorisee dans `knowledge/*`
- ecriture conditionnelle uniquement sur :
- `95_a_capitaliser.md`
- `CLAUDE.md` projet
## Integration recommandee dans BMAD
1. Analyst
Appeler `get_guidance(...)` a l'entree de story pour injecter patterns, risques et docs a lire.
2. Builder
Appeler `validate_plan(...)` avant implementation puis `validate_patch(...)` apres generation du diff.
3. Reviewer
Appeler `emit_checklist(...)` et, si besoin, relancer `validate_patch(...)` sur le diff final.
4. Curator
Utiliser `propose_capitalization(..., dry_run=true)` puis `triage_capitalization()`.
## Installation locale
@@ -34,6 +73,13 @@ source .venv/bin/activate
pip install -e .
```
Pour le dev local avec tests :
```bash
pip install -e ".[dev]"
pytest tests -q
```
## Lancement (stdio)
```bash
@@ -51,3 +97,21 @@ leadtech-bmad-mcp
## Mode de branchement BMAD
Voir `80_bmad/integration_mcp_sidecar.md` pour les points d'injection exacts dans le workflow.
## Merge checklist recommandee
Avant de merger cette brique dans `main` :
- supprimer du repo les artefacts locaux (`.venv`, `__pycache__`, `*.pyc`)
- verifier l'installation sur une machine vierge avec `pip install -e ".[dev]"`
- lancer `pytest tests -q`
- confirmer que les tools/resources exposes sont bien ceux attendus par les prompts BMAD
- documenter la phase de rollout retenue : advisory only ou blocage sur `blocking_issues`
## Upgrades conseilles
- index de recherche compile plutot qu'un scan fichier par fichier
- metadonnees YAML/front matter dans `knowledge/` pour fiabiliser le ranking
- schémas MCP formalises et versionnes pour chaque tool
- logs d'execution par story pour auditer les gates et la decision humaine
- suites de tests complementaires sur les faux positifs/faux negatifs des regex