That sounds like a record number of buzzwords to put into a single project. Are you sure that’s a good idea? Nothing about making such a system requires any of that noise. You may wish to consider just getting something working first before going crazy with the Resume-Driven Development.
Unity doesn’t “expect” anything about coroutines.
Coroutines in a nutshell:
https://discussions.unity.com/t/825667/6
https://discussions.unity.com/t/749264/9
Splitting up larger tasks in coroutines:
https://discussions.unity.com/t/840656/2
Coroutines are NOT always an appropriate solution: know when to use them!