Establish what is happening
Draw the prerequisite graph
List the dependent job, every prerequisite ID, edge or fan-in rule, and expected release condition. Record success, failure, cancellation, missing, and still-running states separately. Include the graph revision used when the dependent was created.
Compare state with release
Trace prerequisite terminal records, dependency projection, release event, dependent ready or claim record, and any timeout. Check whether the release used current state and the correct edge. Preserve a release without a matching prerequisite event as a specific gap.
Inspect wait age and action
Measure how long the dependent has waited and what it does after release or timeout. Compare a successful prerequisite path with a failing or missing one. Distinguish a deliberate wait from a dependent that started before all required prerequisites were ready.
What to carry forward
Return the dependency graph, prerequisite states, release event and reason, wait age, timeout, and dependent outcome. Classify the scope as edge mapping, stale state, fan-in rule, timeout, or normal wait. Keep the cause provisional when graph revision or prerequisite identity is incomplete.
Technical background: Celery documentation.
Keep the decision with the work.
Use a Work Item in Aglet to record the problem, the evidence you have, and the next decision. Add an owner and priority, then keep updates in the discussion so the next person can follow the reasoning.
Create an account See the product workflow