Unless I'm missing something, this doesn't help with preventing regressions. In the end, as the author already puts it, it's an integration test in the end, why not just write the integration tests directly?
The word "testing" is a bit misleading. It's not about test coverage, it's about experimenting to find architecture decisions that are suitable for further development. So, not generating automated tests, but instead building throw-away features on top of the new thing and seeing if they turn out okay. (Though the post remains a bit vague on how to judge "okay".) Maybe it should be called something like "ephemeral build-out" or "future usage trial" or so.
Yeah I don't entirely follow why having had it generate an integration test you'd just throw it away afterwards.
It's for chiseling out the design, not verifying the functionality.