Subprocess does not get terminated

Hi all,

I have a question about a behavior of the engine I do not understand.
We are using BProc for the modelling of the process and we have a subprocess A with several smaller subprocesses inside. At on point in subprocess A, a terminate event is reached and executed, but the subprocess A is still active.
Subprocess A is executed in parallel mode and should run 2 times but is stuck at the first time and the terminate event does not run the second run.

I will attach images below, sorry it is partly in German. In the first screen the big blue box is subprocess A. It has the terminate event on the right side The subpocesses have ended and the parallel gateway joins the paths, triggers the last task which is also finished and the terminate event is reached.
The other screenshots show, that only the subprocess A is not finished and the variables also show that fact.
My question would be if I have a misunderstanding of the terminate event or if it works differently with sequential subprocesses?

Thank you very much for any pointers, after a few hours of experimenting I am running out of ideas.

We have solved the issue and our best guess is that the terminate event does not end the subprocess when the gateway is not in a “finished” state? For example, the gateway is listed in the activites for three executions which COULD mean that it was reached two times and then enabled the last task to execute but the third execution of the gateway set it to wait for the other token from the top.

The reason for the third execution we believe is because we terminate a few tasks by ourselves instead of relying on the terminate event inside the middle box. So like I said we guess that that triggered the subprocess of the middle box to end twice.