A button in the dropdown menu on a user profile in the web interface that sends all of your posts (except for direct messages, and except for followers-only posts if they don't follow you) to them.
This would use the same mechanism as normal post federation; it would simply queue up a delivery job for each of your existing posts to that server.
This would be most useful for followers-only accounts, and could possibly also be a button on the follow request screen right after a follow request is accepted.
When a user from an instance that hadn't previously followed you follows you, none of your post history shows up to them. For followers-only posts, this means the posts will only ever be visible if you boost them, which would also affect all of your other followers.
I feel like this request is not user-centric enough because it requires too much technical knowledge about the implications (posts being federated via server). You could end up with someone expecting a particular follower to see old posts, but not another on the same instance.
I think this could however be a routine (optional to enable for the admin) push job for when a user is first followed by anyone on a different instance (within reasonable limits).
Mastodon supports authenticated requests for statuses. If the HTTP request is signed with an authorized follower's key, the status can be downloaded. So it can be a pull task when following, rather than push task.
if it's pull instead of push, then that's basically #34
Alternative idea based on what I actually did:
A tootctl command that creates DistributionWorker sidekiq tasks for some combination of local username and remote domain name for any toot that user made that should be visible to that instance.
Most helpful comment
Mastodon supports authenticated requests for statuses. If the HTTP request is signed with an authorized follower's key, the status can be downloaded. So it can be a pull task when following, rather than push task.