chore(workflow): complete step 13 (retrospective), v1.2.0 done
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
67
docs/analyse/gitea-dashboard-v1.2.0-2026-03-12.md
Normal file
67
docs/analyse/gitea-dashboard-v1.2.0-2026-03-12.md
Normal file
@@ -0,0 +1,67 @@
|
||||
# Analyse v1.2.0 — gitea-dashboard
|
||||
|
||||
**Date** : 2026-03-12
|
||||
**Track** : minor
|
||||
**Issues** : #6, #7, #8, #9, #10 (5/5 fermees)
|
||||
|
||||
## Metriques
|
||||
|
||||
| Metrique | v1.1.0 | v1.2.0 | Delta | Seuil | Alerte |
|
||||
|----------|--------|--------|-------|-------|--------|
|
||||
| Modules source | 5 | 7 | +2 | — | — |
|
||||
| Lignes source | ~400 | 551 | +38% | — | — |
|
||||
| Fichiers test | 4 | 6 | +2 | — | — |
|
||||
| Tests | 53 | 88 | +66% | +50% | OUI |
|
||||
| Couverture | ~95% | 93% | -2% | -5% | non |
|
||||
| Dependances | 2 | 2 | 0 | +5 | non |
|
||||
| Audit initial | 94 | 78 | -16 | — | — |
|
||||
| Audit final | 100 | 100 | 0 | — | — |
|
||||
| Rounds audit | 2 | 3 | +1 | — | — |
|
||||
|
||||
### Alerte : tests +66%
|
||||
|
||||
La croissance des tests depasse le seuil de +50%. C'est attendu pour une version minor
|
||||
ajoutant 5 fonctionnalites (4 Added + 1 Fixed). Le ratio tests/fonctionnalite reste stable
|
||||
(~7 tests/fonctionnalite). Pas d'action corrective necessaire.
|
||||
|
||||
## Chronologie
|
||||
|
||||
| Etape | Duree estimee | Notes |
|
||||
|-------|--------------|-------|
|
||||
| 6 Plan | rapide | architect, 3 phases, 3 ADR |
|
||||
| 7 Dev | moyen | orchestrator (8 fichiers), 1 commit |
|
||||
| 8 Audit | moyen | 3 rounds (78→94→100), 4 corrections |
|
||||
| 9 Smoke | rapide | 7/7 E2E, 1 round |
|
||||
| 10 Docs | fusionne avec 11 | — |
|
||||
| 11 Release | rapide | lightweight, guardian APPROVED |
|
||||
| 12 Deploy | skip | CLI local |
|
||||
| 13 Retro | rapide | metriques + analyse |
|
||||
|
||||
## Findings d'audit corriges
|
||||
|
||||
1. **Sort milestones** : la section milestones utilisait la liste non triee
|
||||
2. **Sort JSON** : `--sort` etait ignore en mode `--format json`
|
||||
3. **Import lazy** : `export_json` importe conditionnellement dans le corps de main()
|
||||
4. **Helper duplique** : `_make_repo` identique dans test_display.py et test_exporter.py
|
||||
5. **N+1 API** : declasse en dette documentee (ADR-003), 3 appels/repo accepte
|
||||
|
||||
## Decisions notables
|
||||
|
||||
- **ADR-006** : ajout de `exporter.py` (5e module), separation serialisation/affichage
|
||||
- **ADR-007** : retry manuel plutot que urllib3.Retry (simplicite, testabilite)
|
||||
- **ADR-008** : tri dans display.py, pas collector.py (SRP)
|
||||
- **sort_repos rendu public** : necessaire pour le tri JSON dans cli.py
|
||||
|
||||
## Points d'amelioration pour v1.3+
|
||||
|
||||
- Parallelisation des appels API (ADR-003, 3 appels sequentiels par repo)
|
||||
- Export CSV
|
||||
- Cache API local
|
||||
- Couverture display.py a 86% (branches de formatage de dates)
|
||||
|
||||
## Conclusion
|
||||
|
||||
Version v1.2.0 livree avec les 5 fonctionnalites prevues. Audit final 100/100.
|
||||
Le score initial d'audit (78) est le plus bas depuis v1.0.0, principalement du a
|
||||
des bugs introduits par l'orchestrateur (sort inconsistency, sort JSON). Les corrections
|
||||
ont ete rapides (3 rounds). La dette N+1 est documentee et planifiee.
|
||||
Reference in New Issue
Block a user