Maybe I'm just not into the iOS ecosystem enough, but I find this article really hard to take seriously.
The entire discussion is predicated on the existence of "adaptive software", not defined here and with no arguments as to why that's different than extensions or software interpreter.
The article itself seems confused. If Replit has it's created apps being displayed within its app boundaries, how is that different than an app including an interpreter? The article states "you can't version and review adaptive software" but you sure can do that with an interpreter. The fact that you can create additional software doesn't mean the software you are using to do that isn't normal software.
Yes, you're right that interpreters also allow users to run code. And we could argue that Apple is simply being inconsistent in how it applies its policies. I think realistically the difference is in how popular these newer vibe coding apps are, but also the fact that they have a much broader scope of what can be generated.
With Pythonista or a Lua-scripted game, the reviewer can assess what's possible: this app can do everything Python-with-this-API-surface can do, and nothing more.
With LLM-driven generation, the set of possible behaviors isn't fixed. The same Replit app can produce totally different behaviors next month than it can today, without ever being resubmitted, based on model or system prompt updates.
That's what I meant with "you can't review adaptive software".