javascript Promise chaining: augmenting the unique argument

There are two things that, IMHO, make code cleaner when using Promises Idioma:

  1. use an unique object argument (and its attributes as you would use argument legacy)
  2. return resolve with the object given as argument augmented by attribute of the action executed by the function

i.e., say I want to ask db for data about a person, I define the method (function) that got an object {person: {personstruct}} and return the augmented object {person:{personstruct}, contactdata: {contactdatastruct}}