Files
system_update/plan_3.md
T
gilles 0fbca06d3d docs: roadmap tâches 1.9-8 (briefs, gates de validation, designs tâche 2) + plans d'implémentation
Cartographie complète (liste_taches/coherence_taches), briefs tacheN + gates
validation_tacheN, design tâche 2 (docs/design/tache2/), specs/plans jalon 1-2
et tâche 1.9/2 (Phase 1, Phase 2, SJ-0→3). Validations consignées (1.9 , 2-8 🟡).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 19:50:25 +02:00

165 lines
4.8 KiB
Markdown

# Plan de développement — Tâche 3
> Suivi vivant du développement lié à `tache3.md`.
> Objectif : faire évoluer la webapp vers les tuiles machine extensibles, paramètres frontend et layout dashboard cible.
---
## 0. Position actuelle
- Date de démarrage dev : 2026-06-05.
- État : démarrage après validation tâche 3.
- Validation disponible : `validation_tache3.md`, verdict **accepté avec réserves**.
- Périmètre immédiat : webapp React, design system, tuiles machine.
---
## 1. Réserves à traiter
- [ ] Clarifier logos officiels : favicon/app icon original, logos officiels uniquement pour types/outils si autorisés.
- [ ] Ajouter ou décider le composant `Checkbox`/sélection profil post-install.
- [ ] Prévoir spec mobile dédiée.
- [ ] Aligner largeurs min/max Hermes/terminal avec design system.
- [ ] Ajouter état machine erreur/hors ligne dans les maquettes et l'UI.
- [ ] Trancher sauvegarde paramètres : auto-save ou bouton save.
- [ ] Prévoir composants `Select`/`Dropdown` design system.
---
## 2. Jalons
### 3.0 — Reprise et cadrage
- [x] Vérifier que `plan_8.md` est à jour.
- [x] Mettre la tâche 8 en pause.
- [x] Relire `tache3.md` et `validation_tache3.md`.
- [x] Inspecter `MachineTile`, `Dashboard`, `App`, `ui-kit`, CSS.
### 3.1 — Tuile machine compacte/extensible
- [x] Remplacer les boutons texte système par `IconButton`.
- [x] Utiliser `StatusLed` du ui-kit.
- [x] Afficher OS/type/status/dernier check de façon compacte.
- [x] Ajouter sections repliables Docker et Post-install.
- [x] Ajouter état erreur/hors ligne lisible dans la tuile.
- [x] Ajouter CSS dédié sans inline styles excessifs.
- [x] Vérifier TypeScript/build.
### 3.2 — Layout global webapp
- [x] Ajouter header webapp.
- [x] Ajouter footer/barre de tâche avec métriques minimales.
- [x] Vérifier que Hermes/centre/terminal ne se chevauchent pas.
- [x] Préparer largeurs bornées et future redimension.
### 3.3 — Paramètres frontend
- [x] Créer vue Paramètres.
- [x] Apparence/thème/zoom/tuiles.
- [x] Layout volets Hermes/terminal.
- [x] Scripts custom, Docker roots, nettoyage logs.
- [x] Persistance backend à préparer, pas localStorage seul.
### 3.4 — Mode smartphone
- [ ] Brainstorm UX dédiée.
- [ ] Décider onglets/bottom nav.
- [ ] Définir vues prioritaires mobile.
---
## 3. Avancement du tour en cours
- [x] Contexte tâche 8 vérifié.
- [x] Tâche 3 relue.
- [x] Réserves de validation listées.
- [x] Refonte `MachineTile` premier incrément terminée.
---
## 4. Premier incrément — Tuile machine
Fichiers modifiés :
- `client/src/features/machines/MachineTile.tsx`
- `client/src/styles/app.css`
- `client/src/components/ui-kit.tsx`
Ce qui est en place :
- tuile compacte plus dense ;
- actions système en icônes avec tooltips ;
- statut via `StatusLed` ;
- résumé updates/reboot/dernier check ;
- alerte visible pour état `error` ou `unknown` ;
- sections repliables Docker et Post-install ;
- placeholders UI tant que les données Docker/Post-install ne sont pas exposées par le backend ;
- nouveaux alias icônes utiles dans `ICON_MAP`.
Vérifications :
- `tsc --noEmit` : OK.
- `vitest run` : OK, 16 fichiers de test, 42 tests.
- `vite build && tsup` : OK.
Note :
- Vite signale un warning de chunk JS > 500 kB. Non bloquant pour ce jalon, à traiter plus tard par découpage dynamique si nécessaire.
---
## 5. Deuxième incrément — Layout global
Fichiers modifiés :
- `client/src/App.tsx`
- `client/src/panels/Dashboard.tsx`
- `client/src/lib/api.ts`
- `client/src/styles/app.css`
Ce qui est en place :
- header webapp avec identité, résumé machines/updates/jobs/erreurs et toggle thème ;
- footer/barre de tâche style terminal avec machines, apt, jobs, métriques process et load ;
- appel frontend vers `/api/system/metrics` ;
- largeurs Hermes et terminal bornées avec `clamp(...)` ;
- Dashboard remonte un résumé à `App`.
Vérifications :
- `tsc --noEmit` : OK.
- `vitest run` : OK, 16 fichiers de test, 42 tests.
- `vite build && tsup` : OK.
Note :
- warning Vite chunk > 500 kB toujours présent, non bloquant.
---
## 6. Troisième incrément — Paramètres frontend
Fichiers modifiés :
- `client/src/App.tsx`
- `client/src/panels/SettingsModal.tsx`
- `client/src/styles/app.css`
Ce qui est en place :
- bouton Paramètres dans le header ;
- modale Paramètres avec navigation latérale ;
- catégories Apparence, Tuiles, Volets, Docker, Scripts, Hermes, Terminal, Nettoyage ;
- contrôles prêts à brancher à une future API `/api/settings` ;
- mention explicite côté UI que la persistance backend reste à venir.
Vérifications :
- `tsc --noEmit` : OK.
- `vitest run` : OK, 16 fichiers de test, 42 tests.
- `vite build && tsup` : OK.
Note :
- warning Vite chunk > 500 kB toujours présent, non bloquant.