Instead of opening the merge window and making it a free-for-all in a short 2-week period,
what if the merge window rotated among the different subsystems?
E.g. for the next N weeks only accept changes to subsystem A
for the next M weeks, only subsystem B
Wouldn't that help migrate the pain?
Of course different subsystems would clamor over what the ordering and durations should be...
And once we go full-circle and end up back at the first subsystem we bump a version number
somewhere and call that a release!