tour 0001 (claude, implementer) : fondation — README, PROTOCOL v0, config, backlog B-1..B-13
Disput-Turn: 0001 Disput-Participant: claude Disput-Role: implementer Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
# Backlog — disput
|
||||
|
||||
Une tâche par ligne : `- [ ] B-<n> : …`. On coche à la fin du tour qui
|
||||
la termine, en citant ce tour. `[USER]` = décision humaine, jamais prise
|
||||
par un implémenteur. Numéros uniques, jamais réutilisés.
|
||||
|
||||
## v0 — amorçage (le relais remplace la navette manuelle)
|
||||
|
||||
- [ ] B-1 : squelette du paquet Python (`pyproject.toml`, `src/disput/`,
|
||||
point d'entrée `disput`, `argparse` + `tomllib`, aucune dépendance
|
||||
externe en v0), `tests/` en `unittest`
|
||||
- [ ] B-2 : parseur de fichiers de tour (en-tête `+++` TOML, sections
|
||||
Réponses/Items, identifiants, destinataires) + `disput lint`
|
||||
- [ ] B-3 : déduction de l'état des items à partir des tours (§5) +
|
||||
`disput status`
|
||||
- [ ] B-4 : ordonnanceur (§7) en **fonction pure** :
|
||||
(config, tours, diff du dernier tour) → (participant, rôle) | USER
|
||||
| DONE. Tests exhaustifs, y compris l'anti ping-pong
|
||||
- [ ] B-5 : vérification des invariants après un tour (§8), git
|
||||
uniquement
|
||||
- [ ] B-6 : adaptateurs `claude` et `vibe` (lancement non interactif,
|
||||
env forcé, budget/max-turns, log local) + adaptateur `stub` pour
|
||||
les tests
|
||||
- [ ] B-7 : `disput run` (verrou, boucle, arrêt, `.disput/last-run.md`,
|
||||
notification) + scénarios stub « tricheurs » : pas de commit,
|
||||
réécriture, modification d'un tour existant, réviseur qui touche
|
||||
au code, `status=USER`
|
||||
- [ ] B-8 : `disput decide "…"` (écrit et commite le tour `user`)
|
||||
- [ ] B-9 : garde-fous appliqués par adaptateur, à partir de `[guards]`
|
||||
(deny et hook Claude, agent et hook `pre_tool` Vibe), avec preuve
|
||||
qu'un `git push` est refusé dans chaque adaptateur
|
||||
- [ ] B-10 : `disput init` (crée `.disput/` dans un projet existant)
|
||||
- [ ] B-11 : premier `disput run --max-turns 2` sur disput lui-même,
|
||||
sous surveillance de l'humain
|
||||
- [ ] B-12 : adoption par qbt-manager (`disput init`, `disput.toml`
|
||||
avec les checks preflight/tests et les garde-fous dry-run, rôle
|
||||
`security` sur ses chemins sensibles)
|
||||
|
||||
## Décisions humaines
|
||||
|
||||
- [ ] B-13 [USER] : licence, et dépôt public ou privé (remote)
|
||||
|
||||
## Plus tard (seulement sur besoin observé)
|
||||
|
||||
- ACP comme transport unifié des adaptateurs, avec des garde-fous
|
||||
centralisés
|
||||
- reviewers en parallèle (worktrees)
|
||||
- interface en terminal (affichage des tours en direct, décisions à
|
||||
l'écran)
|
||||
- adaptateurs supplémentaires (codex, gemini, opencode…)
|
||||
Reference in New Issue
Block a user