7.7 KiB
7.7 KiB
ObsiGate — Roadmap
Version : 2.3.0-dev | Dernière mise à jour : 2026-09-12 Ce fichier ne contient que le travail à venir (🔵 En cours + ⚪ Backlog) et un index compact vers les fonctionnalités livrées.
- Méthode de livraison à appliquer pour toute tâche : DELIVERY_WORKFLOW.md
- Historique des versions : CHANGELOG.md
- Détail des fonctionnalités livrées : docs/archive/COMPLETED_v1-v2.md
- Fiches détaillées par feature : docs/features/
- Bugs / TODO : ISSUES_TODOLIST.md
Légende
| Icône | Signification |
|---|---|
| ✅ | Terminé |
| 🔵 | En cours |
| ⚪ | Prévu / Backlog |
| 🔴 Impact | Critique / Bloquant |
| 🟡 Impact | Utile / Attendu |
| 🟢 Impact | Nice-to-have / Confort |
Convention : chaque item porte un ID stable
#NN(clé de jointure entre roadmap, changelog et commits). Une fonctionnalité livrée sort de ce fichier et entre dans l'index « Complété » ci-dessous, avec son détail dansdocs/features/ou l'archive.
🔵 En cours
77. Application Desktop native — Tauri (Windows / Linux / macOS)
- Effort : 8-12 jours | Impact : 🟡 | Framework : Tauri v2 (Rust + Webview)
- Statut : livré (A→F) — projet Tauri, backend Python embarqué, fonctionnalités natives, build CI, UX, 16 tests Rust. Détail complet : features/desktop-tauri.md
- Reste à faire :
- Signature de code Windows (optionnel mais recommandé)
- Wizard « Choisissez votre vault » au 1er lancement (optionnel)
- Jumplist vaults récents dans le menu Démarrer (optionnel)
- 6 tests E2E manuels : installation, tray icon, notifications natives, association
.md, auto-update, désinstallation
⚪ Backlog — Priorité 4 (P4)
73. Synchronisation multi-appareils — Obsidian Sync compatible
- Effort : 6-8 jours | Impact : 🟢
- Description : Synchronisation des vaults entre plusieurs instances d'ObsiGate via un protocole de synchronisation décentralisé ou compatible Obsidian Sync. Alternative self-hosted à Obsidian Sync.
- Sous-tâches :
- Protocole : évaluation CRDT vs OT vs diff/patch pour fichiers markdown
- Transport : WebSocket ou polling HTTPS avec compression
- Merge strategy : LWW (Last Writer Wins) avec historique des deux versions
- Détection de changements : hash SHA-256 par fichier, journal des modifications
- UI : page « Synchronisation » avec statut par appareil, historique des syncs
- Conflits : UI de résolution manuelle (diff côte à côte entre version locale et distante)
- Chiffrement : optionnel, chiffrement AES-256-GCM avant transmission
- Pairing : échange de clé publique + code QR pour appairage des appareils
✅ Complété — index
Détail complet dans docs/archive/COMPLETED_v1-v2.md et docs/features/. Cette table est la seule source de navigation ; ne pas re-détailler les items livrés ici.
| # | Domaine / fonctionnalité | Version | Détails |
|---|---|---|---|
| 1–8 | Fondations (FastAPI, TF-IDF + stemming, watchdog, SPA, sécurité, path traversal, gzip, PWA) | 1.0.0→1.4.0 | archive |
| 9–20 | UX & productivité (share, webhooks, dashboard, conflits, backlinks, redaction, backups, graphe, header, aperçu) | 1.5.0→1.6.0 | archive |
| 21–22 | Architecture (split app.js → 16 modules, validateur imports CI) |
1.5.1 | archive |
| 23–25 | CI/CD & qualité (Gitea Actions, Ruff/Mypy/Bandit/Pip-audit, pytest) | 1.6.0 | archive |
| 26–29 | AI Editor (toolbar, multi-provider, 16 endpoints, auto-save) | 1.7.0 | archive |
| 30–39 | Fonctionnalités avancées (export PDF, palette, mobile, drag & drop, filtres, indexation non-bloquante) | 1.8.0→1.9.0 | archive |
| 40–46 | Gestion des backups (diff, gestionnaire, purge, auto, rétention) | 1.9.0 | archive |
| 47–57 | Mermaid.js (22 templates, live preview, thèmes, zoom, plein écran, pré-processeur Obsidian) | 2.0.0 | archive |
| 58 | Tests E2E Playwright (44 desktop + 12 mobile, CI) | 2.0.0 | archive |
| 59 | Mode hors-ligne PWA complet (IndexedDB, file de synchro, conflits) | 2.0.0 | archive |
| 63 | Internationalisation i18n FR/EN | 2.0.0 | archive |
| 65 | Thèmes personnalisés (light/dark/high-contrast/sepia, import/export) | 2.0.0 | archive |
| 66 | Export multi-formats (HTML, MD bundle, ePub) | 2.0.0 | archive |
| 71 | Tableau de bord administrateur | 2.0.0 | archive |
| 64 | MFA (TOTP + WebAuthn + recovery codes) | 2.1.0 | archive |
| 74 | Support complet des documents PDF | 2.1.0 | features/pdf.md |
| 75 | Éditeur multi-panneaux (Split View) | 2.1.0 | features/split-view.md |
| 61 | Plugins système (sandbox Web Worker, hooks, 9 endpoints) | 2.2.0 | archive |
| 67 | Notifications web — Push API | 2.2.0 | archive |
| 68 | Health check enrichi | 2.2.0 | archive |
| 72 | API publique documentée — OpenAPI 3.1 | 2.2.0 | archive |
| 76 | BooksLM — Console AI contextuelle par répertoire | 2.2.0 | features/bookslm.md |
| 78 | Éditeur Excalidraw | 2.2.0 | features/excalidraw.md |
| 62 | Collaboration temps réel — Édition simultanée (Yjs/CRDT, WebSocket, awareness) | 2.3.0 | features/collaboration.md |
| 79 | Assistant IA — Outils (function calling) & serveur MCP | 2.3.0 | features/ai-tools-mcp.md |
| 80 | Assistant IA — Rendu Markdown, liens fichiers/paths & sessions | 2.3.0 | features/ai-assistant-ux.md |
| 69 | Éditeur mobile natif — Interface tactile optimisée | 2.3.0 | features/mobile-editor.md |
| 70 | Recherche sémantique — Embeddings vectoriels (hybride TF-IDF + RRF) | 2.3.0 | features/semantic-search.md |
| 77 | Application Desktop native — Tauri | 🔵 en cours | features/desktop-tauri.md |
📊 Résumé des efforts
| Priorité | Items | Effort total estimé |
|---|---|---|
| ✅ Complété | #1 → #59, #61–72, #74–76, #78–80 | ~103 jours réalisés |
| 🔵 P2 restant | #77 Desktop : signature code (optionnel), wizard 1er lancement (optionnel), 6 tests E2E manuels | ~1-2 jours |
| ⚪ P4 restant | #73 Sync (6-8j) | 6-8 jours |
| Total restant | 2 items + finitions | ~7-10 jours |
Notes
- Les items P3/P4 ne sont pas ordonnés par priorité interne — à raffiner selon les retours utilisateurs.
- L'effort inclut le développement + tests unitaires + intégration CI, mais pas la documentation utilisateur.
- Les items marqués 🟢 (nice-to-have) sont de bons candidats pour des contributions externes.
- Maintenance de ce fichier : quand un item passe à ✅, déplacer son détail vers
docs/features/<slug>.md(grosse feature) oudocs/archive/COMPLETED_v1-v2.md(item court), ajouter une ligne dans l'index « Complété », et consigner la version dans le CHANGELOG.