Ok so after a ticket with Microsoft and a lot of time in between they finally got an answer back to us. Short answer: There is a OOB Field "Route Case" that by default is not placed on the form and defaulted to yes. WHEN PLACED INTO THE FORM the logic will first look to see if the field is on the form, If so when you select save it will AUTOMATICALLY change it to no. When you select yes it will prompt to use the routing rule set and the field will remain yes then subsequently fire the routing rules. Long answer:
I have met with engineering team member to investigate what is happening behind the scenes in your environment and analyzed the behavior you are observing. Good news is that, we have an update explaining, why the behavior of the field “Route Case” having he value of YES instead of NO and how to mitigate for your situation. The solution initially provided is to add Route Case to your form is still valid. Here is the explanation from our analysis.
1. Firstly, by default OOB the “Route Case” field is not added and visible to the Case Form and default value is set to YES. The reason for that, is to enable routing when cases are created automatically from activities. This part is by design.
2. When we create a case using the Form manually through web UI and click Save button, the OOB web resource checks whether the field Route Case is present in the form or not. If it is present, then it will set to NO as it is manually created Case by user interaction. It means the case is not routed yet. If it is not present in the form, we will not change the default value. The “Save & Route” button is similar, it will first run the Save operation for new case (similar to Save) and then pops up a window asking for confirmation to route.
In your situation, there are multiple forms on the Case entity as shown below in your development environment. We didn’t see the Route Case field added to form “Case – PC3” form. Because of that, the value is YES for that field for cases we create manually also. Mitigation is to add that field using form editor. You can either keep that field shown in the form or mobile or not according to your needs. Save and publish that changes. Then try creating a case and hit Save button. This will set the value for Route Case to NO. If you can also try the Save & Route for a new case created.
Note: We have already added the field in the support instance and tried to create new case and it is setting “Route Case” value correctly to NO for Save operation.
Note: The above logic is only applicable when case is created using form from web UI. If cases are created through SDK or Import way, you should set the Route Case value to NO otherwise, the default value YES is applicable. Here is the link explaining that with a snippet shown below.
docs.microsoft.com/.../create-rules-automatically-route-cases [docs.microsoft.com]
I do see you have processes defined checking for Route Case value equal to NO. Since the field is not in the form, the value is left with default value YES and it was proceeding with the routing rules execution and crating queue items. Hope the above explanation provides clarity of why it is happening and how to mitigate the issue you observe in your environment.