feat: unified social identity layer — SocialIdentity, ports, use cases, adapter
SocialIdentity value object (Local|Remote), SocialCommand/SocialQuery domain ports, 11 CQRS use cases w/ 14 tests, CompositeSocialAdapter wrapping k_ap, 6 new domain events, handlers migrated from ap_service to use cases. Closes #12 foundation — AP handlers + legacy cleanup TBD.
This commit is contained in:
@@ -63,10 +63,29 @@ pub enum DomainEvent {
|
||||
user_id: UserId,
|
||||
movie_id: MovieId,
|
||||
},
|
||||
FollowRequested {
|
||||
follower: UserId,
|
||||
target: crate::value_objects::SocialIdentity,
|
||||
},
|
||||
FollowAccepted {
|
||||
local_user_id: UserId,
|
||||
remote_actor_url: String,
|
||||
outbox_url: String,
|
||||
owner: UserId,
|
||||
requester: crate::value_objects::SocialIdentity,
|
||||
},
|
||||
Unfollowed {
|
||||
follower: UserId,
|
||||
target: crate::value_objects::SocialIdentity,
|
||||
},
|
||||
FollowerRemoved {
|
||||
owner: UserId,
|
||||
follower: crate::value_objects::SocialIdentity,
|
||||
},
|
||||
ActorBlocked {
|
||||
blocker: UserId,
|
||||
target: crate::value_objects::SocialIdentity,
|
||||
},
|
||||
ActorUnblocked {
|
||||
blocker: UserId,
|
||||
target: crate::value_objects::SocialIdentity,
|
||||
},
|
||||
BackfillFollower {
|
||||
owner_user_id: UserId,
|
||||
|
||||
Reference in New Issue
Block a user