Whether the Promise/A+ spec is bare bones or not doesn't matter, the reference implementation is the ES6 native Promise, which is part of Node and now natively in browsers too. This is concretely what a promise _is_, use a different sort of promise at your peril.
And the Promise/A+ spec is so bare-bones, it is laughable. And the actual issue is that not every module is embracing it yet.
Sure, it will all be fixed. For freeeee :)