Dorico makes a mess of IRV routing between flows

I keep encountering an IRV MIDI routing in Dorico 4:

  1. I am using MIDI out only (no VST) and I have routed some divisi strings with IRV in my template like so (note Staff b, Violin I that is routed to Channel 2 in the image below):

image

  1. Then I add a new flow, add divisi in Write Mode and when I get to routing I see something quite strange. Even though I selected “Edits apply to all flows” before, Dorico doesn’t show both divisi staves in Play Mode (see image below).

image

  1. In order to show both staves in this new flow, I have to first disable and then reenable IRV. But disabling and reenabling IRV causes Dorico to jump the screen to the very top even though I was working at the very bottom. This happens separately on disable and then again on reenable. Considering how awful and inconvenient the scrolling has become in the new GUI, this can be quite frustrating especially with large templates.
  1. Finally after all this disconnecting, reconnecting and scrolling back and forth, Dorico presents me with this new, broken routing:

image

  1. Somehow, Dorico acts as if the routing for Staff (b) that I had set previously and saved in the endpoint (Edits apply to all flows) doesn’t really matter - it skips a channel grabs the routing from the next available instrument instead.

  2. In the end, I have to redo all the routing manually - 10 channels all over again for each flow. Reapplying the template doesn’t make any difference. And, rather amazingly, once I fix the routing for one instrument Dorico then goes ahead and screws up the routing for the next one (see Violin II Staff (a) below getting upgraded from Channel 3 to Channel 1):

image

  1. Is there something I should be doing differently to avoid this mess? I have no idea if this issue is connected to the fact that MIDI-thru doesn’t work on the (b) divisi staves, which is a chapter all its own and a total nightmare for auditioning. But I really really hope the sorry state of the new Play Mode is fixed soon. Thank you for reading and sorry for the :rage:

I had to delete a flow this morning and sure enough Dorico promptly messed up divisi routing in the previous flows. The Track Inspector shows that the instruments are routed sequentially from Channel 1 to 10, as intended, and that the divisi Staff (b) for Violin II is routed to Channel 4, also as intended.
But the Endpoint Config dialog shows Violin I is now routed twice and no matter what I do I cannot get Dorico to assign it correctly anymore:

==========

I opened the XML file for Endpoint Config, and I can confirm that all of my channel assignments (and expression maps) for divisi are preserved and saved sequentially, and I believe correctly (it counts from 0):

==========
Reapplying the entire template leads to the same result - Dorico routes the first two divisi staves as if they were two separate non-divisi instruments. In practice it means Dorico always ignores the routing for the (b) staves and it skips the channels that are allocated to (b) staves in the Endpoint Config.
Here’s the assignments I get after reapplying the Template in a flow with existing divisi and IRV (with correctly saved routing):
Violin I (a) - Channel 1 (correct)
Violin I (b) - Channel 3 (should be Channel 2)
Violin II (a) - Channel 1 (should be Channel 3)
Violin II (b) - Channel 3 (should be Channel 4)
Viola (a) - Channel 5 (correct)
Viola (b) - Channel 5 (should be Channel 6)
Cello (a) - Channel 7 (correct)
Cello (b) - Channel 7 (should be Channel 8)
Bass (a) - Channel 9 (correct)
Bass (b) - Channel 9 (should be Channel 10)

==========

Starting a brand-new file and following these steps:
(a) creating divisi staves, and
(b) enabling IRV, and
(c) applying/reapplying the template,

simply repeats the same problem: all (b) staff assignments from the Endpoint Config are ignored, the assigned channel from Endpoint Config gets skipped and Dorico instead routes as listed above and shown here:

image

==========

So I am left with two issues - the Endpoint Config is useless for routing MIDI-out IRV-enabled channels. And I cannot restore the routing in my file.
What to do?

I ended using an Auto-Save to partially recover my file, thank God for this being enabled!
In the meantime, it seems that the following sequence of steps is necessary for achieving correct routing of the MIDI-Out divisi in new flows:

  1. Add a new flow
  2. Disable IRV in Play Mode. (Even though divisi is not yet enabled in that flow, Dorico will already show those staves as Divisi (a) staff. Probably because “Edits apply to all flows” is enabled.)
  3. Create divisi staves in Write Mode
  4. Enable IRV again in Play Mode.
  5. Fix the incorrect routing for the (b) staves for each section instrument, as shown in the earlier message.

That’s all. It’s extremely frustrating, and I apologize for multiple messages.