docs: define v1 requirements
This commit is contained in:
90
.planning/REQUIREMENTS.md
Normal file
90
.planning/REQUIREMENTS.md
Normal file
@@ -0,0 +1,90 @@
|
||||
# Requirements: vmux
|
||||
|
||||
**Defined:** 2026-03-23
|
||||
**Core Value:** Savoir instantanément quelle session Claude Code a besoin de moi, sans scanner manuellement mes workspaces.
|
||||
|
||||
## v1 Requirements
|
||||
|
||||
Requirements for initial release. Each maps to roadmap phases.
|
||||
|
||||
### Session Discovery
|
||||
|
||||
- [ ] **DISC-01**: vmux détecte automatiquement les processus Claude Code actifs sur le poste
|
||||
- [ ] **DISC-02**: vmux identifie le cwd et le worktree git de chaque session
|
||||
- [ ] **DISC-03**: vmux affiche le nom de la branche git de chaque session
|
||||
- [ ] **DISC-04**: vmux permet d'associer un label humain à une session (ex: "review MR !456")
|
||||
|
||||
### State Detection
|
||||
|
||||
- [ ] **STATE-01**: vmux détecte l'état de chaque session : travaille / attend input / idle
|
||||
- [ ] **STATE-02**: vmux affiche un aperçu des dernières lignes de sortie de chaque session
|
||||
- [ ] **STATE-03**: vmux distingue le type d'attente (permission prompt, question utilisateur, idle prompt)
|
||||
- [ ] **STATE-04**: vmux affiche le temps écoulé depuis que la session attend ("depuis 3 min")
|
||||
|
||||
### i3 Integration
|
||||
|
||||
- [ ] **I3-01**: vmux mappe chaque session à son workspace i3
|
||||
- [ ] **I3-02**: vmux permet de switcher vers le workspace i3 d'une session en une action
|
||||
- [ ] **I3-03**: vmux fournit un widget i3bar affichant le statut des sessions en temps réel
|
||||
|
||||
### Notifications
|
||||
|
||||
- [ ] **NOTIF-01**: vmux notifie (dunst) quand une session passe de "travaille" à "attend input"
|
||||
- [ ] **NOTIF-02**: vmux supporte un mode focus qui supprime temporairement les notifications
|
||||
|
||||
## v2 Requirements
|
||||
|
||||
Deferred to future release. Tracked but not in current roadmap.
|
||||
|
||||
### Presentation
|
||||
|
||||
- **PRES-01**: TUI interactive avec Bubble Tea (navigation, détails, actions)
|
||||
- **PRES-02**: Multi-écran awareness (quel écran affiche quel workspace)
|
||||
|
||||
### Integration
|
||||
|
||||
- **INTG-01**: Intégration avec piaire (timetracking, features)
|
||||
- **INTG-02**: Répondre à Claude Code depuis vmux sans switcher de workspace
|
||||
|
||||
### Intelligence
|
||||
|
||||
- **INTL-01**: Debounce intelligent des notifications (pas de spam lors d'enchaînements tool_use)
|
||||
- **INTL-02**: Priorité des notifications par type d'attente
|
||||
|
||||
## Out of Scope
|
||||
|
||||
| Feature | Reason |
|
||||
|---------|--------|
|
||||
| Terminal intégré | Complexité trop élevée, dispatcher suffit pour la v1 |
|
||||
| Lancement de sessions Claude Code | vmux observe, ne crée pas |
|
||||
| Gestion du timetracking | Couvert par piaire |
|
||||
| Dashboard web | L'approche i3-native (CLI + i3bar) est plus cohérente avec le workflow |
|
||||
|
||||
## Traceability
|
||||
|
||||
Which phases cover which requirements. Updated during roadmap creation.
|
||||
|
||||
| Requirement | Phase | Status |
|
||||
|-------------|-------|--------|
|
||||
| DISC-01 | - | Pending |
|
||||
| DISC-02 | - | Pending |
|
||||
| DISC-03 | - | Pending |
|
||||
| DISC-04 | - | Pending |
|
||||
| STATE-01 | - | Pending |
|
||||
| STATE-02 | - | Pending |
|
||||
| STATE-03 | - | Pending |
|
||||
| STATE-04 | - | Pending |
|
||||
| I3-01 | - | Pending |
|
||||
| I3-02 | - | Pending |
|
||||
| I3-03 | - | Pending |
|
||||
| NOTIF-01 | - | Pending |
|
||||
| NOTIF-02 | - | Pending |
|
||||
|
||||
**Coverage:**
|
||||
- v1 requirements: 13 total
|
||||
- Mapped to phases: 0
|
||||
- Unmapped: 13 ⚠️
|
||||
|
||||
---
|
||||
*Requirements defined: 2026-03-23*
|
||||
*Last updated: 2026-03-23 after initial definition*
|
||||
Reference in New Issue
Block a user