chore(workflow): complete step 13 (retrospective), v1.4.0 done
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
72
docs/analyse/gitea-dashboard-v1.4.0-2026-03-13.md
Normal file
72
docs/analyse/gitea-dashboard-v1.4.0-2026-03-13.md
Normal file
@@ -0,0 +1,72 @@
|
||||
# Analyse de version — gitea-dashboard v1.4.0
|
||||
|
||||
**Date** : 2026-03-13
|
||||
**Track** : minor
|
||||
**Durée** : 1 session
|
||||
|
||||
## Métriques
|
||||
|
||||
| Métrique | v1.3.0 | v1.4.0 | Delta |
|
||||
|----------|--------|--------|-------|
|
||||
| Fichiers source | 7 | 8 | +1 (+14%) |
|
||||
| Lignes source | ~850 | 1138 | +288 (+34%) |
|
||||
| Tests | 122 | 166 | +44 (+36%) |
|
||||
| Couverture | 99% | 94% | -5% |
|
||||
| Dépendances runtime | 2 | 3 | +1 (PyYAML) |
|
||||
| Audit initial (reviewer) | 68 | - | - |
|
||||
| Audit initial (guardian) | 87 | - | - |
|
||||
| Audit final | 100 | - | - |
|
||||
| Rounds d'audit | 2 | - | - |
|
||||
| Corrections d'audit | 6 | - | - |
|
||||
| Smoke tests E2E | 11/12 | - | - |
|
||||
|
||||
## Alertes
|
||||
|
||||
| Métrique | Seuil | Valeur | Statut |
|
||||
|----------|-------|--------|--------|
|
||||
| Tests | +50% | +36% | OK |
|
||||
| Couverture | -5% | -5% | **ALERTE** |
|
||||
| Dépendances | +5 | +1 | OK |
|
||||
|
||||
**Couverture -5%** : la baisse de 99% à 94% est due aux nouvelles branches dans `display.py` (rendu conditionnel des colonnes, coloration milestones) et `config.py` (chemins de fichier par défaut). Ces branches sont difficiles à tester sans infrastructure de capture console plus élaborée. Les fonctions critiques (collecte, export, retry) restent à 100%.
|
||||
|
||||
## Issues traitées
|
||||
|
||||
| Issue | Titre | Type | Résultat |
|
||||
|-------|-------|------|----------|
|
||||
| #16 | Milestone progress view (--milestones) | feat | Fermée |
|
||||
| #17 | YAML configuration file support | feat | Fermée |
|
||||
| #18 | Handle API timeout during paginated requests | fix | Fermée |
|
||||
| #19 | Configurable column visibility (--columns) | improvement | Fermée |
|
||||
|
||||
## ADR produits
|
||||
|
||||
- ADR-012 : Dégradation gracieuse sur timeout dans `_get_paginated`
|
||||
- ADR-013 : Nouveau module `config.py` pour la configuration YAML
|
||||
- ADR-014 : Dataclass `MilestoneData` pour la vue milestones
|
||||
- ADR-015 : Colonnes configurables par inclusion/exclusion
|
||||
|
||||
## Observations
|
||||
|
||||
### Ce qui a bien fonctionné
|
||||
|
||||
- **TDD 4 commits** (2 RED + 2 GREEN) : les tests failing d'abord ont permis de détecter les interfaces manquantes avant l'implémentation
|
||||
- **Audit adversarial** : 6 findings détectés dont 2 majeurs (colonne activity non rendue, incohérence token/auth). Sans l'audit, ces bugs auraient été livrés en production
|
||||
- **Dégradation gracieuse** : le pattern timeout partiel est propre et réutilisable pour d'autres cas
|
||||
- **Configuration YAML** : architecture propre avec module dédié, résolution ${VAR}, et détection des variables non résolues
|
||||
|
||||
### Points d'attention
|
||||
|
||||
- **Couverture en baisse** : la colonne `activity` duplique le rendu de `commit` — une future version pourrait différencier ces colonnes (fréquence vs date)
|
||||
- **Syntaxe `--columns`** : l'exclusion par préfixe `-` nécessite la syntaxe `--columns="-col"` à cause d'argparse — documenter dans l'aide CLI
|
||||
- **Clé `columns` dans YAML** : le fichier config YAML ne supporte pas encore la clé `columns` — finding mineur du smoke test, à traiter en v1.5
|
||||
|
||||
### Améliorations de workflow
|
||||
|
||||
- L'orchestrator a produit les 4 commits TDD correctement malgré la complexité (10 fichiers)
|
||||
- Le fixer a corrigé les 6 findings en une seule passe sans régression
|
||||
- Le mode lightweight de release gate (audit_final=100) a permis d'accélérer la publication
|
||||
|
||||
## Conclusion
|
||||
|
||||
Version v1.4.0 livrée avec 4 fonctionnalités majeures et 1 bugfix. Le projet atteint 8 modules source, 166 tests, et 3 dépendances runtime. La couverture a baissé de 5% mais reste à 94%. Le prochain cycle devrait prioriser la couverture des branches display.py et le support de `columns` dans la config YAML.
|
||||
Reference in New Issue
Block a user