It is a tricky problem - on one hand, we want to capture as much as you can with DSL, since that gives us power to "do more", but on the other hand, we want to give you all the flexibility you need, which means doing stuff outside of DSL, stuff that Wasp does not understand and only sees as a black box. We think we can solve this by offering multiple levels of abstraction to choose from + escape mechanisms on the right places, and we are integrating with the JS ecosystem so you can write a lot of the natively already (NodeJS, React, more in the future).
So while we still don't have this completely figured out (and I don't think we will until we get it done), we are hopeful! One cool thing is that doing our DSL also gives us a lot of freedom here, to find the best abstraction.
Awesome, ping us on our Discord (https://discord.com/invite/rzdnErX) if you will have any questions - Wasp is still in early alpha and rough around the edges (including missing flexibility), so if you get stuck anywhere let us know! Actually ping us anyway if you wish, we would love to hear how you found the experience, how hard was it to get into it.