feat: migrate k-ap 0.1.10→0.3.1, fix AP gaps
- split FederationRepository into FollowRepository, ActorRepository, BlocklistRepository, ActivityRepository
- RemoteActor: 5 new fields (bio, banner_url, followers_url, following_url, also_known_as)
- ApObjectHandler split: get_local_objects_page/count_local_posts → ApContentReader trait
- builder API: positional args → named setters
- broadcast_create_note/update_note: add ApVisibility + mentioned_inboxes params
- backfill_outbox → import_remote_outbox
- ApUser: also_known_as Option<String> → Vec<String>, new fields
AP gaps fixed:
- add GET /users/{id}/followers + /following with content negotiation
- wire EventPublisher into builder via FederationEventBridge adapter
- add display_name field full stack (domain→DB→API→AP)
- DB-side outbox pagination (get_local_reviews_page)
- set featured_url on ApUser
This commit is contained in:
@@ -20,7 +20,7 @@ impl EventHandler for FollowBackfillHandler {
|
||||
};
|
||||
tracing::info!(actor = %remote_actor_url, outbox = %outbox_url, "starting outbox backfill");
|
||||
self.ap_service
|
||||
.backfill_outbox(outbox_url, remote_actor_url)
|
||||
.import_remote_outbox(outbox_url, remote_actor_url)
|
||||
.await
|
||||
.map_err(|e| DomainError::InfrastructureError(e.to_string()))
|
||||
}
|
||||
|
||||
@@ -60,7 +60,7 @@ async fn main() -> anyhow::Result<()> {
|
||||
);
|
||||
// Wire federation repos early to get remote_watchlist_repo for AppContext.
|
||||
#[cfg(feature = "federation")]
|
||||
let (fed_federation_repo, _fed_social_query, fed_review_store, fed_remote_watchlist_repo) =
|
||||
let (fed_activity_repo, fed_follow_repo, fed_actor_repo, fed_blocklist_repo, _fed_social_query, fed_review_store, fed_remote_watchlist_repo) =
|
||||
match &db_pool {
|
||||
#[cfg(feature = "sqlite-federation")]
|
||||
db::DbPool::Sqlite(pool) => sqlite_federation::wire(pool.clone()),
|
||||
@@ -195,7 +195,10 @@ async fn main() -> anyhow::Result<()> {
|
||||
#[cfg(feature = "federation")]
|
||||
{
|
||||
let ap_wire = activitypub::wire(
|
||||
fed_federation_repo,
|
||||
fed_activity_repo,
|
||||
fed_follow_repo,
|
||||
fed_actor_repo,
|
||||
fed_blocklist_repo,
|
||||
fed_review_store,
|
||||
fed_remote_watchlist_repo,
|
||||
fed_ap_content,
|
||||
|
||||
Reference in New Issue
Block a user