ObsiGate/docs/ROADMAP.md
Bruno Charest 5280dc7a50 Add comprehensive documentation and analysis files
Add extensive project documentation including analysis review, image
rendering changelog and guide,
contributing guidelines, hidden files configuration guide, PWA
documentation suite, roadmap, and
dashboard specification.
2026-05-26 08:35:58 -04:00

73 lines
4.0 KiB
Markdown

# ObsiGate — Roadmap
> **Date :** 2026-05-25 | **Version :** 1.4.0 / 1.5.0
---
## Légende
- ✅ Complété
- 🟡 En cours / Partiel / À investiguer
- ⬜ À faire
- 🔴 Critique
---
## Nouvelles fonctionnalités (historique TODO.md)
-**Indexation incrémentale automatique** — Le watcher détecte les nouveaux fichiers et met à jour l'index sans réindexation complète. Utilise `_on_vault_change``update_single_file` / `remove_single_file` / `handle_file_move`.
-**Copier le chemin** — Option "Copier le chemin" dans le menu contextuel (clic droit) de l'arborescence pour tout élément (vault, dossier, fichier).
-**Panneau À propos** — Section "À propos" dans le modal Configurations affichant la version, la version API, les stats de santé.
-**Vue Graphique** — Canvas force-directed accessible via menu contextuel sur les vaults et dossiers. Affiche nœuds (fichiers/dossiers) et arêtes (parent + wikilinks). Zoom/pan interactif.
-**Mode onglets (Tabs)** — Barre d'onglets multi-fichiers permettant de visualiser plusieurs fichiers simultanément, avec fermeture et navigation.
-**Login Popout** — La fenêtre popout affiche un formulaire de connexion quand l'authentification est requise, puis recharge la page après login.
---
## Corrections (historique TODO.md)
-**Login popout avec redirection** — Quand un fichier est ouvert via l'URL popout et que l'authentification est requise, un formulaire de login est proposé. Après connexion réussie, la page recharge automatiquement.
- 🟡 **Correction TOC — scroll avec caractères accentués** — Le clic sur un titre dans la table des matières ne fonctionne pas toujours pour les titres contenant des lettres accentuées. Les fonctions slugify (frontend) et _heading_slugify (backend) utilisent des normalisations Unicode qui peuvent diverger pour certains caractères (ex: œ, æ). **À corriger :** unifier l'algorithme + ajouter un fallback `scrollIntoView`.
---
## Améliorations prioritaires (voir ANALYSE_REVIEW.md §4)
### 🔴 Sécurité — P0
- 🔴 **Masquage automatique des secrets** — Implémenter un `SecretRedactor` pour masquer les clés API, tokens, et mots de passe dans les aperçus de contenu (preview RÉCENT, dashboard, vue rendu).
- 🔴 **Rate limiting sur le login** — 5 tentatives max par IP sur 15 minutes, blocage après 10 échecs.
### 🟠 Robustesse — P1
- 🟠 **Log d'audit** — Tracer les écritures, suppressions, et changements de config dans `data/audit.log`.
- 🟠 **Backup automatique avant écriture** — Sauvegarder le contenu original dans `.obsigate-backup/` avant chaque PUT ou DELETE.
### 🟡 UX — P2
- 🟡 **Backlinks panel** — Afficher les fichiers contenant des wikilinks pointant vers le fichier courant. Index inversé des wikilinks.
- 🟡 **Gestion des conflits Syncthing** — Dashboard « Conflits » avec diff et résolution (garder local, garder conflit).
- 🟡 **Liste IGNORED_DIRS configurable** — Rendre la liste des dossiers ignorés par le watcher configurable (env var ou Configurations).
- 🟡 **Timeout de session configurable** — Exposer le TTL JWT dans les Configurations.
### 🟢 Fonctionnel — P3/P4
- 🟢 **Dashboard statistiques** — Métriques par vault : fichiers totaux, taille, top tags, orphelins.
- 🟢 **Webhooks** — Notifier des systèmes externes lors de changements (création, modif, suppression).
- 🟢 **Documentation OpenAPI enrichie** — Enrichir les modèles Pydantic pour la doc auto-générée /docs et /redoc.
- 🟢 **Gestion fichiers non-supportés** — Message explicite + bouton download pour les fichiers binaires non gérés.
### ⬜ Qualité & Polish — P5+
-**Tests unitaires** (pytest)
-**Tests E2E** (Playwright)
-**CI/CD pipeline** (GitHub Actions)
-**i18n** (support anglais + français)
-**CHANGELOG.md**
-**Documentation utilisateur enrichie**
-**Authentification multi-facteurs** (TOTP/WebAuthn)
---
*Document généré le 2026-05-25 — Remplace l'ancien TODO.md*