the phrase "separation between the two codebases" feels wrong here. It feels like an implementation detail but shouldn't do. For instance prototypes might be a completely separate repo, a fork or an existing repo or behind a feature flag. You could argue about which is better or whether it's a progression but I think this reads with a certain assumption about one way to do it.