Lightweight containerized prosody tooling + moved auth scripts + xmpp reconnect/auth stabilization
This commit is contained in:
27
artifacts/plans/04-identity-resolution-and-merge.md
Normal file
27
artifacts/plans/04-identity-resolution-and-merge.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# Feature Plan: Identity Resolution and Merge
|
||||
|
||||
## Goal
|
||||
Improve person graph quality by suggesting and applying safe merges across transport identifiers.
|
||||
|
||||
## Why This Fits GIA
|
||||
- Core value of universal inbox depends on clean `Person` identity graph.
|
||||
|
||||
## Scope
|
||||
- Heuristic scoring for candidate merges.
|
||||
- Manual review queue with approve/reject.
|
||||
- Merge operation with audit trail and undo window.
|
||||
|
||||
## Implementation
|
||||
1. Add scoring service using signals: normalized phone, username similarity, name overlap, shared chat co-occurrence.
|
||||
2. Add `IdentityMergeSuggestion` model with score + reasons.
|
||||
3. Add UI panel to review/approve merges.
|
||||
4. Implement safe merge transaction (`PersonIdentifier` reassignment, metadata merge rules).
|
||||
5. Emit audit events and rollback snapshots.
|
||||
|
||||
## Acceptance Criteria
|
||||
- Suggestions generated deterministically and explain reasons.
|
||||
- Merge is idempotent and reversible within configured window.
|
||||
- No identifier is lost or orphaned.
|
||||
|
||||
## Out of Scope
|
||||
- Fully automatic merge without human approval.
|
||||
Reference in New Issue
Block a user