Job not running when expected

My setup is slightly complicated. I have 4 queues, A, B, C, D.
When the pipeline is triggered it starts a job in queue A, lets call it a0.
a0 uploads two jobs:

  • b0 uses queue B
  • d0 uses queue D and depends on b0

b0 uploads jobs c0 trough cN which use queue C

What I except to happen:
d0 runs as soon as b0 is finished because queue D is open

What actually happens:
d0 does not run until all jobs c0 through cN have completed.

When I look at the timeline of the job it depends on additional UUIDs that I didn’t add to the step dependencies and I’m not sure what they refer to.

What are the extra dependencies, why are they added, and is there any way to not have them added?

In your d0 job what is your depends_on clause?

depends_on: b0

That is the key for that step?

A workaround could be to create a single job in the pipeline b0 uploads and have it simply echo "Starting d0" and have d0 depend on that job.