verdverm
2 hours ago
Intermixing tools and processes like that will create a bunch of pain. Even Atlas seems to realize this (probably from customer feedback) as they offer the "versioned" mode that looks exactly like what we do today.
https://atlasgo.io/versioned/intro
Note how this section of the docs is much longer than the declarative version. One of the hard parts about adopting something like this is that it's easy for new projects, but hard to start using in an existing project.
I've built something similar myself: https://hofstadter.io/getting-started/data-layer/
You always need escape latches when there are things you cannot define in your declarative (DSL). This makes things more mentally and contextually difficult, so most people opt for the simple and clearly understandable.