- await of a checked-dynamic value is PromiseResolve then await, so an
object with a callable then is adopted. The rewrite applies only when a
program source can define a thenable; other programs keep the plain
checked await.
- promise.constructor answers the Promise constructor; its prototype and
Promise.prototype answer an object holding the runtime's then, catch
and finally as non-enumerable own properties.
- Reflect.getOwnPropertyDescriptor and Reflect.defineProperty over checked
objects.
Together these run execa 5's Promise mixin over checked objects.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>