Dependent jobs randomly skipped if the dependency failed and was restarted

I’ve recently experienced an inconsistent behavior of my build pipelines (recent update?)

I have a multi-stage pipeline with many dependencies, defined with ‘needs’.

I’ve been observing, that when a job fails, and succeeds after restart, the jobs that define that job in their ‘needs’ are randomly marked as ‘skipped’ and the whole pipeline is blocked (I have no option to start that jobs, only starting the whole pipeline works).

I have never recently got issues, and restarting failed jobs is something that happens on daily basis (network problems or changes in configuration repositories often cause job failures in the development phase).

Unfortunately, I’m unable to find any rule when the jobs are skipped (it’s random for me).

Can it be caused by mixing ‘dependency’ and ‘needs’ in one CI?