Random behaviour in gitlab-CI

Sadly today I had to tweak some existing ci yml
Even more unfortunately they now dont work
One is a 4 stage.
It stopped at stage 3, no output in the log so I cant see why it failed
I put some output lines in - just an echo, then it passed stage 3 and stopped at stage 4 … same issue nothing in the output
So I put an echo in stage 4
Then stage 3 failed again
I put another echo in and stage 3 worked again
Then I put a change in I thought might fix stage 4 and stage 3 failed again
So I saved the yml with out making any change and stage 3 worked again

After some playing around it seems if it fails you can retrigger the build as often as you like it will always fail the same. If you change the file - or just resave it - it may, or may not at its own decision decide it will run or not run.

What can be causing this? I thought it might be timing between build stages but they are all sequential with nothing in parallel.