In productionProadvancedExecutor deadlock

The prepare-pick trigger deadlocks the supervisor

Make /prepare_pick return by letting the supervisor process the /reset_gripper response while its trigger callback is blocked, without switching to call_async.

Pairs with Executors and callback timing in ROS 2 Systems Debugging. Read the concept first, then diagnose it here.

Unlock this lab with Pro

Operator report

/prepare_pick is advertised, but calling it never returns; the supervisor hangs with no error.

Ubuntu 24.04, ROS 2 Jazzy, Python and C++ nodes, browser telemetry workspace

System boundary

Trace only the relevant path.

/prepare_pick triggersingle-threaded executor/reset_gripper response

How this lab works

You diagnose it — no command list.

Open the repair workspace and gather your own evidence in a real terminal. No diagnostic commands are handed to you — finding the fault is the exercise. Stuck? Progressive hints unlock inside the workspace.

Verification

Your repair must pass more than the visible symptom.

  • prepare_pick returns without deadlock
  • prepare_pick reports success
  • Hidden regression behavior
  • Root cause explanation