Running app's workflow at normal speed is buggy/broken but works properly if run step-by-step

I am building a music streaming app using the paid aPlayer music plugin. The song source is from a repeating group and references the cell’s index to know what to play next or skip to. When one song ends, the app is designed to…

+1 to the repeating group’s custom state of ‘cs-song-index’ > Then pass that value to another custom state on the app level of ‘cs-selected-song’ (Also picked from that same repeating group) > Then the media player goes to the beginning with the new ‘cs-selected’ song’s audio file loaded up to play.

When I run it at normal speed and the song ends, my app gets all buggy and seems like it repeats the workflow more than needed all at once and ends up at an index number of 2 or more ahead of where it should have been (+1) and thus plays the wrong song.

Even more strange… IF I run it step-by-step in the debugger, it works exactly as it should. I also set up workflows for when you skip forward or skip backwards and those all work fine at the normal speed (They also reference the cs-song-index in the same way).

Does anyone know what I’m missing? This is currently my last real hurdle and really stopping me from progressing much further.

APP URL - https://breakr-app.bubbleapps.io/version-test/app-main?debug_mode=true

To get to bug do the following…
1 - Click a chart image
2 - Click a song
3 - Click on the mini player to bring up the full-screen player
4 - Click near the end of the progress bar (It happens if you let it run from beginning to end as well but want to save you time).
5 - Wait for the song to end and see what happens

I also added some custom state helper text fields at the top so if after step 4 you hurry up and close the main player (top left down arrow), you will be able to see the custom states update real-time. Song index is in the top right and selected song is bottom left.

Looking forward to hearing everyone’s input.

I am having a similar issue.

The command creates a thing, modifies it, then displays it in a repeating group. I have even added pauses between each command to slow it down but that hasn’t helped.

At normal speed, the workflow does actually execute, but the new items do not display in the repeating group. But they are IN the database as they should be.

At “slow” or “step-by-step” it works perfectly.