[M4] UI : fusion manuelle d'identités (Identity Merge) et suggestions automatiques #228

Closed
opened 2026-04-06 08:55:03 +00:00 by charles · 0 comments
Owner

Contexte

L'utilisateur doit pouvoir lier manuellement plusieurs puppet users à un même contact logique. Le système suggère aussi des fusions automatiques basées sur la similarité.

Critères d'acceptation

  • Dialog "Fusionner des identités" : recherche de puppet users, sélection multiple, confirmation
  • Scoring de similarité similarity_score(a, b) -> f64 : Levenshtein normalisé sur display_name (×0.4), numéro de téléphone commun (×0.5), même serveur bridge (×0.1)
  • Suggestions automatiques affichées si score > 0.6 (configurable), avec bouton "Lier" ou "Ignorer"
  • Notification non-intrusive quand une suggestion est disponible
  • Option pour dissocier une identité d'un contact unifié
  • Toggle bridges.suggest_merges dans les préférences

Notes techniques

  • Crate : crates/fractal-bridge/ (scoring) + crates/fractal-gtk/ (UI)
  • Voir specs §6.2 (SF-M4-02, SF-M4-06) et §6.3 (ST-M4-04)
  • Dépend de #221 (UnifiedContact)
## Contexte L'utilisateur doit pouvoir lier manuellement plusieurs puppet users à un même contact logique. Le système suggère aussi des fusions automatiques basées sur la similarité. ## Critères d'acceptation - [ ] Dialog "Fusionner des identités" : recherche de puppet users, sélection multiple, confirmation - [ ] Scoring de similarité `similarity_score(a, b) -> f64` : Levenshtein normalisé sur display_name (×0.4), numéro de téléphone commun (×0.5), même serveur bridge (×0.1) - [ ] Suggestions automatiques affichées si score > 0.6 (configurable), avec bouton "Lier" ou "Ignorer" - [ ] Notification non-intrusive quand une suggestion est disponible - [ ] Option pour dissocier une identité d'un contact unifié - [ ] Toggle `bridges.suggest_merges` dans les préférences ## Notes techniques - Crate : `crates/fractal-bridge/` (scoring) + `crates/fractal-gtk/` (UI) - Voir specs §6.2 (SF-M4-02, SF-M4-06) et §6.3 (ST-M4-04) - Dépend de #221 (UnifiedContact)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
charles/my-fractal#228
No description provided.