Promise.resolve vs new Promise (resolução)

Estou usando o bluebird e vejo duas maneiras de resolver funções síncronas em uma promessa, mas não entendo as diferenças entre as duas maneiras. Parece que o stacktrace é um pouco diferente, então eles não são apenas umalias, direito?

Então, qual é a maneira preferida?

Caminho A

function someFunction(someObject) {
  return new Promise(function(resolve) {
    someObject.resolved = true;
    resolve(someObject);
  });
}

Caminho B

function someFunction(someObject) {
  someObject.resolved = true;
  return Promise.resolve(someObject);
}

questionAnswers(2)

yourAnswerToTheQuestion