Right now replaceOnChanges isn't taken into account when traversing
the dependencies of a resource that will be replaced with delete
before replace (DBR).
This will lead to wrong replace orders and failures if the cloud
providers verify whether a resource is still in use.
While pulumi/sdk maintains strict backwards compatibility guarantees, code under pkg/ is handled more
informally: while breaking changes are still discouraged they may happen when they make sense.