A newer version of the Streamlit SDK is available: 1.58.0
OML_DB - Roadmap d'amelioration des tools
Date: 2026-02-23
Contexte
Cette proposition est basee sur une analyse du codebase (et non seulement du menu UI), notamment:
app.pyapps/database_page.pyutils/utils_vars.pyqueries/process_all_db.pyapps/ciq_2g_generator.pyapps/ciq_3g_generator.pyapps/ciq_4g_generator.pyapps/clustering.pyapps/dump_compare.py
Propositions cibles (specifiques au repo)
- Health Summary (nouveau tool)
- Ajouter une page unique qui agrege:
- qualite DB
- KPI
- checks existants
- Points de connexion:
- navigation:
app.py - donnees:
utils/utils_vars.py,utils/kpi_analysis_utils.py
- navigation:
- Shared Dump Cache
- Parser le dump une seule fois par session et reutiliser les donnees entre pages/tools.
- Cible:
apps/database_page.py- harmonisation avec les autres pages qui relisent le meme dump.
- Export Job Runner + Progress
- Encapsuler les exports lourds avec:
- statut
- progression
- log utilisateur
- Cible:
- orchestration:
apps/database_page.py - execution:
queries/process_all_db.py
- orchestration:
- Validation Engine (fichiers en entree)
- Validation schema avant calcul:
- colonnes obligatoires
- types minimaux
- messages d'erreur explicites
- Priorite:
apps/clustering.pyapps/dump_compare.py
- CIQ Unified Generator
- Factoriser le flux commun 2G/3G/4G:
- upload
- spinner
- session state
- download
- Cible:
apps/ciq_2g_generator.pyapps/ciq_3g_generator.pyapps/ciq_4g_generator.py
- Settings Persistence
- Persister les toggles metier (ex: exclusion BSC 2G decom) entre refresh/restart.
- Cible:
apps/database_page.pyutils/utils_vars.py
Priorisation impact / effort
- Validation Engine
- Effort: S
- Impact: Fort immediat (moins de plantages opaques)
- Export Job Runner + Progress
- Effort: M
- Impact: Fort UX (visibilite sur traitements longs)
- CIQ Unified Generator
- Effort: M
- Impact: Fort maintenance (moins de duplication)
- Shared Dump Cache
- Effort: M/L
- Impact: Fort perf (moins de re-parse)
- Health Summary
- Effort: M/L
- Impact: Fort operationnel (vision unique)
- Settings Persistence
- Effort: M
- Impact: Moyen/fort UX (moins de reconfiguration)
Plan de mise en oeuvre recommande
Phase 1 (quick wins)
- Validation Engine sur clustering + dump compare
- Progress/log minimal sur exports database
Phase 2
- Factorisation CIQ generators
- Persistence des settings critiques
Phase 3
- Shared Dump Cache transverse
- Nouvelle page Health Summary
Notes techniques
- Attention a l'usage de globals dans
UtilsVars: definir clairement les regles d'invalidation quand un nouveau dump est charge. - Ajouter une convention de cles
st.session_statepour eviter collisions entre pages. - Preferer des fonctions utilitaires partagees pour les patterns repetes (upload/validate/process/download).