feat: finalisation éditeur Forge + mode hors-ligne PWA + consolidation roadmap
CI / lint (push) Failing after 7s
CI / test (push) Has been skipped
CI / build (push) Has been skipped
CI / security (push) Failing after -7s

- Forge: Tab indent, Ctrl+K, auto-focus, AI status, messages erreur FR
- Forge: slash commands clean, cache-bust iframe, preview serveur
- Forge: iframe 82vh, hauteur auto, table inline, sélecteur langage
- PWA hors-ligne: IndexedDB (offline-db.js + offline.js)
- Mermaid: thème dark complet, highlight.js preview
- Backend: màj CSP, rename chain, bookmarks/history/shares
- Roadmap: consolidation dans docs/ROADMAP.md (75 items)
- Infra: docker-compose.podman.yml, suppression test-vault
- .gitignore: exclusion odysseus/
This commit is contained in:
2026-06-14 20:27:37 -04:00
parent 0cdebc5b40
commit feeb46b873
31 changed files with 1769 additions and 981 deletions
-22
View File
@@ -1,22 +0,0 @@
---
titre: Accueil
statut: actif
tags: [accueil, important]
catégorie: général
publish: true
date: 2025-01-15
---
# Bienvenue dans le vault de test
Ceci est un document de test pour [[ObsiGate]].
## Sections
- [[Projets/Projet Alpha]] - Un projet en cours
- [[Notes/Configuration serveur]] - Documentation technique
- [[Recettes/Pâtes carbonara]] - Une recette
## Tags
#accueil #important #test
-29
View File
@@ -1,29 +0,0 @@
---
titre: Pâtes carbonara
tags: [recette, cuisine, italien, pâtes]
catégorie: cuisine
date: 2025-04-10
favoris: true
---
# Pâtes carbonara authentiques
## Ingrédients
- 400g de spaghetti
- 200g de guanciale
- 4 jaunes d'œufs
- 100g de pecorino romano
- Poivre noir
## Préparation
1. Cuire les pâtes al dente
2. Faire revenir le guanciale
3. Mélanger les jaunes avec le fromage
4. Assembler hors du feu
## Notes
Ne jamais utiliser de crème !
La vraie carbonara n'a pas de crème.
-28
View File
@@ -1,28 +0,0 @@
---
titre: Tiramisu classique
tags: [recette, cuisine, italien, dessert]
catégorie: cuisine
date: 2025-04-15
publish: true
---
# Tiramisu
## Ingrédients
- 500g de mascarpone
- 4 œufs
- 100g de sucre
- Biscuits à la cuillère
- Café fort
- Cacao en poudre
## Préparation
1. Séparer les blancs des jaunes
2. Mélanger jaunes + sucre + mascarpone
3. Monter les blancs en neige
4. Incorporer délicatement
5. Tremper les biscuits dans le café
6. Alterner couches
7. Réfrigérer 4h minimum
-442
View File
@@ -1,442 +0,0 @@
# 🧪 Suite de Tests Complète : Diagrammes Mermaid
Ce document sert de référence pour valider le rendu de tous les types de diagrammes Mermaid.js, ainsi que leurs fonctionnalités avancées (styling, interactions, sous-éléments).
---
## 1. Flowchart (Organigramme)
*Teste : Formes de nœuds variées, sous-graphes, liens avec texte, classes de style, et markdown dans les nœuds.*
```mermaid
flowchart LR
%% Définition des styles
classDef default fill:#f9f9f9,stroke:#333,stroke-width:2px;
classDef success fill:#d4edda,stroke:#28a745,stroke-width:2px;
classDef error fill:#f8d7da,stroke:#dc3545,stroke-width:2px;
subgraph Groupe A [Processus Principal]
direction TB
A([Début]) --> B{Condition ?}
B -->|Oui| C[Action Standard]
B -->|Non| D[/Action Alternative/]
end
subgraph Groupe B [Résultats]
C --> E((Fin Succès)):::success
D --> F{{Fin Erreur}}:::error
end
%% Lien avec markdown et événement clic
E -.->|"**Résultat**<br/>[Voir détails](#)"| G
click G "https://example.com" "Ouvrir exemple" _blank
```
---
## 2. Sequence Diagram (Diagramme de Séquence)
*Teste : Participants, alias, boucles, alternatives, parallélisme, notes, activation et types de messages.*
```mermaid
sequenceDiagram
autonumber
participant C as Client
participant API as API Gateway
participant DB as Base de Données
C->>API: Requete POST /login
activate API
API->>DB: Verifier identifiants
activate DB
alt Identifiants valides
DB-->>API: Succes (200 OK)
API-->>C: Token JWT
else Identifiants invalides
DB-->>API: Echec (401 Unauthorized)
API--xC: Rejete
end
deactivate DB
deactivate API
rect rgb(200, 220, 250)
Note over C,DB: Cette section est surlignee pour l'audit
C->>DB: Requete de logs
end
```
---
## 3. Class Diagram (Diagramme de Classes)
*Teste : Espaces de noms, relations (héritage, composition, agrégation), visibilité, génériques et méthodes.*
```mermaid
classDiagram
namespace Base {
class Utilisateur {
-int id
+String nom
+String email
+seConnecter() bool
}
}
namespace Admin {
class Administrateur {
+String niveauAcces
+gererUtilisateurs() void
}
}
class Session {
-String token
+Date expiration
}
Utilisateur <|-- Administrateur : hérite
Utilisateur "1" *-- "0..*" Session : possède
Utilisateur ..> InterfaceAuth : implémente
```
---
## 4. State Diagram (Diagramme d'États)
*Teste : États composites, choix, fourches/joins, états finaux et transitions.*
```mermaid
stateDiagram-v2
[*] --> EnAttente
state CommandeEnCours {
EnAttente --> Validée : Paiement reçu
Validée --> Expédiée : Colis préparé
}
Expédiée --> ChoixLivraison
state ChoixLivraison <<choice>>
ChoixLivraison --> Livrée : Domicile
ChoixLivraison --> RetraitPoint : Point relais
Livrée --> [*]
RetraitPoint --> [*]
note right of Validée
L'état est irréversible
une fois le colis parti.
end note
```
---
## 5. Entity Relationship Diagram (MCD)
*Teste : Entités, attributs avec types, clés primaires (PK), clés étrangères (FK) et cardinalités.*
```mermaid
erDiagram
CLIENT {
int id PK
string nom
string email UK
}
COMMANDE {
int id PK
int client_id FK
date date_creation
float total
}
PRODUIT {
int id PK
string reference UK
float prix
}
CLIENT ||--o{ COMMANDE : "passe"
COMMANDE }o--o{ PRODUIT : "contient"
```
---
## 6. User Journey (Parcours Utilisateur)
*Teste : Sections, tâches avec score de satisfaction et acteurs multiples.*
```mermaid
journey
title Parcours d'achat sur l'application
section Recherche
Ouvrir l'application : 5: Utilisateur
Utiliser la barre de recherche : 4: Utilisateur, Moteur de recherche
section Achat
Ajouter au panier : 5: Utilisateur
Procéder au paiement : 3: Utilisateur, Système bancaire
section Post-achat
Recevoir l'email de confirmation : 5: Utilisateur, Service Email
```
---
## 7. Gantt Chart (Diagramme de Gantt)
*Teste : Format de date, sections, dépendances (`after`), marqueur "aujourd'hui" et exclusion de week-ends.*
```mermaid
gantt
title Planning de Développement v2.0
dateFormat YYYY-MM-DD
axisFormat %d/%m
excludes weekends
section Conception
Maquettes UI/UX :a1, 2024-01-01, 10d
Validation client :milestone, m1, 2024-01-11, 0d
section Développement
Frontend :a2, after a1, 15d
Backend API :a3, 2024-01-05, 20d
Intégration :a4, after a2, 5d
```
---
## 8. Pie Chart (Diagramme Circulaire)
*Teste : Titre, affichage des valeurs et des pourcentages.*
```mermaid
pie showData
title Répartition du trafic web (2024)
"Moteurs de recherche" : 45.5
"Liens directs" : 30.2
"Réseaux sociaux" : 15.8
"Campagnes email" : 8.5
```
---
## 9. Git Graph
*Teste : Commits, branches, checkout, merges, cherry-picks et tags.*
```mermaid
gitGraph
commit id: "Initial commit"
branch develop
checkout develop
commit id: "Ajout feature A"
commit id: "Ajout feature B"
checkout main
merge develop id: "Merge develop" tag: "v1.0.0"
commit id: "Hotfix critique"
checkout develop
cherry-pick id: "Hotfix critique"
commit id: "Préparation v1.1"
```
---
## 10. Requirement Diagram (Ingenierie Systeme)
*Teste : Exigences, elements, risques et relations de tracabilite.*
*Note : `requirementDiagram` n'est pas supporte par Mermaid 11. Utilise un flowchart equivalent.*
```mermaid
flowchart LR
subgraph Requirements["Exigences"]
SEC001["SEC-001<br/>Le systeme doit chiffrer<br/>les mots de passe<br/>Risk: High<br/>Verif: Test"]
end
subgraph Elements["Elements"]
Auth["Serveur Auth<br/>Node.js<br/>doc: Architecture.md"]
DB["Base de Donnees<br/>PostgreSQL"]
end
Auth -->|"satisfies"| SEC001
DB -->|"copies"| SEC001
```
---
## 11. Mindmap (Carte Mentale)
*Teste : Nœud racine, formes variées, icônes FontAwesome et sauts de ligne.*
```mermaid
mindmap
root((Projet Web))
Frontend
React
::icon(fa fa-react)
Tailwind CSS
Backend
Node.js
::icon(fa fa-node)
Base de données
PostgreSQL
Redis
Déploiement
Docker<br/>et CI/CD
::icon(fa fa-docker)
```
---
## 12. Timeline (Frise Chronologique)
*Teste : Titre, sections et événements avec texte multi-lignes.*
```mermaid
timeline
title Historique des versions du produit
section 2022
v1.0 : Lancement initial : Fonctionnalités de base
section 2023
v1.5 : Ajout du mode sombre : Refonte de l'UI
v2.0 : Architecture microservices : Passage à l'échelle
section 2024
v2.5 : Intégration IA : Assistant virtuel
```
---
## 13. Quadrant Chart (Matrice)
*Teste : Titres, axes personnalisés, quadrants et points avec styles.*
```mermaid
quadrantChart
title Matrice des priorités (Impact vs Effort)
x-axis "Faible Impact" --> "Fort Impact"
y-axis "Faible Effort" --> "Fort Effort"
quadrant-1 "À planifier"
quadrant-2 "À prioriser (Quick Wins)"
quadrant-3 "À éviter"
quadrant-4 "À déléguer"
"Correction de bugs mineurs": [0.2, 0.2]
"Nouvelle fonctionnalité IA": [0.8, 0.8]
"Refonte du logo": [0.3, 0.8]
"Optimisation SEO": [0.8, 0.3]
```
---
## 14. XY Chart (Beta)
*Teste : Graphique combiné (barres + ligne) avec axes personnalisés.*
```mermaid
xychart-beta
title "Ventes mensuelles vs Objectifs (2024)"
x-axis ["Jan", "Fév", "Mar", "Avr", "Mai"]
y-axis "Montant (€)" 0 --> 10000
bar [5000, 6000, 7500, 8200, 9500]
line [6000, 6500, 7000, 8000, 10000]
```
---
## 15. Block Diagram (Beta)
*Teste : Mise en page libre, blocs imbriqués, spans et icônes.*
```mermaid
block-beta
columns 3
%% Ligne 1
db[("Base de Données")]
space
api["API Gateway"]
%% Ligne 2 (span sur 3 colonnes)
block:Frontend:3
columns 2
web["Application Web"]
mobile["Application Mobile"]
end
%% Liaisons (visuelles via l'ordre ou explicites si supporté)
db --> api
api --> web
api --> mobile
style db fill:#f9f,stroke:#333
style api fill:#bbf,stroke:#333
```
---
## 16. Sankey Diagram (Beta)
*Teste : Flux de données avec valeurs et couleurs de liens.*
```mermaid
sankey-beta
%% source,target,value
Energie fossile,Electricite,40
Energie solaire,Electricite,30
Energie eolienne,Electricite,30
Electricite,Industrie,50
Electricite,Residentiel,35
Electricite,Pertes reseau,15
```
---
## 17. Packet Diagram (Beta)
*Teste : Représentation de trames réseau avec taille de mot et champs de bits.*
```mermaid
packet-beta
title Trame Ethernet Simplifiée
0-15: "Adresse MAC Destination"
16-31: "Adresse MAC Source"
32-47: "Type / Longueur"
48-127: "Payload (Données)"
128-143: "FCS (Contrôle)"
```
---
## 18. Kanban (Nouveauté v11)
*Teste : Sections, tickets avec ID, assignations, priorités et dates d'échéance.*
```mermaid
kanban
column1[À faire]
task1[Créer maquettes]@{ assigned: 'Alice', priority: 'High', ticket: 'DES-101' }
task2[Rédiger spécifications]@{ assigned: 'Bob', priority: 'Medium' }
column2[En cours]
task3[Développer l'API]@{ assigned: 'Charlie', priority: 'High', ticket: 'DEV-204', due: '2024-02-15' }
column3[Terminé]
task4[Configurer le CI/CD]@{ assigned: 'Alice', priority: 'Low', ticket: 'OPS-005' }
```
---
## 19. C4 Model (Context)
*Teste : Personnes, systèmes internes, systèmes externes et relations.*
```mermaid
C4Context
title Diagramme de Contexte Système - Application E-commerce
Person(client, "Client", "Un utilisateur qui achète des produits.")
System(eCommerce, "Système E-commerce", "Permet aux clients de parcourir et acheter des produits.")
System_Ext(payment, "Système de Paiement", "Stripe", "Gère les transactions bancaires.")
System_Ext(shipping, "Service de Livraison", "FedEx", "Gère l'expédition des colis.")
Rel(client, eCommerce, "Utilise pour acheter", "HTTPS")
Rel(eCommerce, payment, "Soumet le paiement", "API")
Rel(eCommerce, shipping, "Envoie les détails de livraison", "API")
```
---
## 20. Cas Limites & Compatibilité (Edge Cases)
*Teste la robustesse du parser face à des syntaxes hybrides ou des caractères spéciaux.*
```mermaid
flowchart TD
%% Test de caracteres speciaux et echappement
A["Noeud avec des guillemets #quot;internes#quot; et des sauts<br/>de ligne"] --> B
%% Test de formules mathematiques (si le moteur le supporte)
B("Formule : $E = mc^2$") --> C
%% Test de syntaxe style Obsidian (doit soit s'afficher en brut, soit etre pre-processe)
C["Lien wiki : Page Interne"] --> D
D["Highlight : Texte important"] --> E
%% Test de lien avec ID contenant des tirets et underscores
E --> F{Decision_Complexe-2024}
```
-32
View File
@@ -1,32 +0,0 @@
---
titre: Configuration serveur
tags: [serveur, configuration, technique, linux]
catégorie: technique
date: 2025-02-20
---
# Configuration du serveur
Documentation pour configurer un serveur Linux.
## Prérequis
- Ubuntu 22.04 LTS
- Docker installé
- 4 Go RAM minimum
## Étapes
1. Installation des dépendances
2. Configuration du firewall
3. Déploiement Docker
```bash
sudo apt update
sudo apt install docker.io
```
## Notes
Voir [[Notes/Sécurité]] pour la sécurisation.
Voir [[Notes/Performance]] pour l'optimisation.
-22
View File
@@ -1,22 +0,0 @@
---
titre: Astuces Docker
tags: [docker, conteneur, déploiement, technique]
catégorie: technique
date: 2025-05-01
---
# Astuces Docker
## Nettoyage
```bash
docker system prune -a
```
## Docker Compose
Toujours utiliser des fichiers `.env` pour les secrets.
## Volumes
Préférer les volumes nommés aux bind mounts.
-20
View File
@@ -1,20 +0,0 @@
---
titre: Optimisation des performances
tags: [performance, optimisation, serveur]
catégorie: technique
date: 2025-03-01
---
# Optimisation des performances
## Cache
Utiliser Redis pour le cache.
## Indexation
Configurer les index de base de données.
## Monitoring
Mettre en place Prometheus et Grafana.
-31
View File
@@ -1,31 +0,0 @@
---
titre: Sécurité
tags: [sécurité, serveur, firewall]
catégorie: technique
date: 2025-01-30
publish: true
---
# Sécurité du serveur
## Firewall
Utiliser ufw pour le firewall :
```bash
sudo ufw enable
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
```
## Certificats SSL
Utiliser Let's Encrypt pour les certificats.
## Mots de passe
Toujours utiliser des mots de passe forts.
Minimum 16 caractères.
Voir aussi [[Notes/Configuration serveur]].
-31
View File
@@ -1,31 +0,0 @@
---
titre: Projet Alpha
statut: en cours
tags: [projet, alpha, serveur]
catégorie: développement
publish: true
date: 2025-03-10
favoris: true
---
# Projet Alpha
Ce projet consiste à déployer un [[Notes/Configuration serveur|serveur]] pour l'application.
## Objectifs
- Mise en place du serveur
- Configuration de [[Notes/Sécurité]]
- Tests de performance
## Équipe
- Bruno (lead)
- Équipe DevOps
## Avancement
Le projet est **en cours**. La première phase est terminée.
La deuxième phase débute la semaine prochaine.
Voir aussi [[Projet Beta]] pour le projet connexe.
-21
View File
@@ -1,21 +0,0 @@
---
titre: Projet Beta
statut: planifié
tags: [projet, beta, frontend]
catégorie: développement
date: 2025-05-20
---
# Projet Beta
Ce projet est le successeur du [[Projets/Projet Alpha]].
## Technos
- React
- TypeScript
- Tailwind CSS
## Planning
Début prévu : juin 2025
-7
View File
@@ -1,7 +0,0 @@
---
tags: [caché, test]
---
# Document dans un sous-dossier
Ce document teste l'arborescence.