Yes, the solution is to write a wrapper (at least for now). Something like:
Client.prototype.queryEntity2 = function(a, b, cb) {
this.queryEntity(a, b, function(err, resp, task) { cb(err, [resp, task]); });
}
I did not try to introduce extra syntax for it because there are only a few APIs that require such wrappers. The node.js APIs don't (with the notable exception of fs.exists!!) and the mongodb APIs don't either. And when you have lots of streamline code, most of your calls are to APIs that you created, and you don't need wrappers for those. But of course, some modules do things differently.
I could handle this with a slightly different callback marker. For example client.queryEntity(tasks', 'partition1', item, [_]) to indicate that the result be put in an array.
Note: with the async/await syntax, you will need wrappers around all node and 3rd party APIs because await expects a "deferred". I was more thinking of investing time on async/await than on extensions of the _ syntax.
Bruno