The approach is similar to parametric builds in jenkins. The problem is the management of the parameters.
For example:
msA v1.0 & maB v1.0 are individually green, and pass all integration tests. Green build for app.
msB is updated to v1.1. Passes individual tests but fails integration with msA v1.0. Red build for app.
msA is updated to 1.1. Passes individually. Still fails integration with msB v1.1. Red build for app.
However. msA v1.1 is still compatible with msB v1.0, so we could have a green app build with a newer version of msA.
Automating this process is what is becoming cumbersome. We have many more services in dev at any one time.