the recipientSyncData command currently has logic for converting a CallbackCanceled error code into a retryable error. recipientForgetMigration does not currently do the same conversion: https://github.com/10gen/mongo/blob/1049af0cf89571f65cf9a22dfe75119b9059d785/src/mongo/db/repl/tenant_migration_recipient_service.cpp#L3279-L3286
we should update this code to ensure that callers can retry in the event of a CallbackCanceled, since in the case when during a failover, a PrimaryOnlyService's scoped task executor rejects a task (instead of seeing an interrupted OperationContext), we would see kExecutorShutdownStatus propagated down the future chain.