Maybe the way yo go for Monogame will be make one shader compiler for each platform, which i think would sign the end of monogame: there is already little spare time for contributors to improve the current version.
Maintaining many versions may lead to divergence, moreover when more contribute to the version they are interested in at the dispense of others.
But as technologies evolve, if monogame does not enter in the wagon it may stay a 2d framework. There is already dx12 and monogame does not yet provide all the stuff of dx11 (and dx10 as Geom. Shader were already available)
The only way to go i can see is to propose to install the technology we need: you wanna make some dx12 features with win10, monogame only install the framework (the common stuff from xna: vectors, matrices etc) and the dx12 part that is needed to compile your shaders.
You need to do something with linux, install monogame for linux with opengl related compilers.
Maybe the support of mobiles can stay in one package, as they share the same graphics card (not sure but it is opengl right?)
This way, breaking changes when a new opengl or directx arise only impact the concerned technology and not all of them, which can stay alive and running
Maybe i'm not clear, tell me if anything is garbage, i just woke up with these ideas