feat: SnippetStore + ConversationExporter + DeepLEngine + TranslationCache (#59, #63, #65) #175

Merged
charles merged 6 commits from feat/65-63-59-m5-extras into main 2026-04-06 02:35:34 +00:00
Owner

Résumé

Trois features M5 + fix module routing non déclaré.

#63 — Bibliothèque de snippets (fractal-ext/src/snippets.rs)

  • Snippet avec expand(vars) et variables() via regex {{var}}
  • builtin_vars(room_name) — date, heure, salon
  • SnippetStore : add/remove/get/search — 5 tests unitaires

#65 — Export de conversation (fractal-ext/src/export.rs)

  • ExportFormat : Markdown, Html, Pdf (extension + MIME)
  • ExportFilters : sender, from_ts, to_ts
  • ConversationExporter::export() : Markdown + HTML avec échappement XSS — 4 tests unitaires

#59 — Traduction DeepL (fractal-ai/src/translation_ext.rs)

  • DeepLEngine implémente TranslationEngine (stub, API non wired)
  • TranslationCache : HashMap (event_id, target_lang) + invalidation — 3 tests unitaires
  • TranslationPrefs : moteur préféré, langue cible, auto-translate, show_original
  • 1 test async tokio

Fix routingpub mod routing ajouté dans fractal-ai/src/lib.rs (PR #160 avait ajouté routing.rs sans le déclarer)

Closes #59
Closes #63
Closes #65

## Résumé Trois features M5 + fix module routing non déclaré. **#63 — Bibliothèque de snippets** (`fractal-ext/src/snippets.rs`) - `Snippet` avec `expand(vars)` et `variables()` via regex `{{var}}` - `builtin_vars(room_name)` — date, heure, salon - `SnippetStore` : add/remove/get/search — 5 tests unitaires **#65 — Export de conversation** (`fractal-ext/src/export.rs`) - `ExportFormat` : Markdown, Html, Pdf (extension + MIME) - `ExportFilters` : sender, from_ts, to_ts - `ConversationExporter::export()` : Markdown + HTML avec échappement XSS — 4 tests unitaires **#59 — Traduction DeepL** (`fractal-ai/src/translation_ext.rs`) - `DeepLEngine` implémente `TranslationEngine` (stub, API non wired) - `TranslationCache` : HashMap `(event_id, target_lang)` + invalidation — 3 tests unitaires - `TranslationPrefs` : moteur préféré, langue cible, auto-translate, show_original - 1 test async tokio **Fix routing** — `pub mod routing` ajouté dans `fractal-ai/src/lib.rs` (PR #160 avait ajouté routing.rs sans le déclarer) Closes #59 Closes #63 Closes #65
charles deleted branch feat/65-63-59-m5-extras 2026-04-06 02:35:35 +00:00
Sign in to join this conversation.
No description provided.