moveit_task_constructor
moveit_task_constructor copied to clipboard
debug output for compatibility check
One of the remaining problems that are hard to debug occurs when Connect
rejects all incoming states as incompatible.
In this case everything looks nice in RViz & the logs but connect does not produce a single solution for no obvious reason.
To debug, I used https://github.com/ros-planning/moveit_task_constructor/commit/598753e2c8053374657d1991c979bc03f36f9681 over here, but this just spams the logs when many actually-incompatible states are checked.
Because compatibility is checked before computation, we can't easily produce feedback to the user via Solutions (and comments).
We probably do not want another orthogonal mechanism in the framework either - unless we need it for something else too.
I'm unsure how to resolve this in a clean way.
First of all you need to decide what to report. I agree, that it's not useful to report all incompatibilities as in 598753e2c8053374657d1991c979bc03f36f9681. One could collect all different incompatibility reasons (using throttling mechanism similar to ros_console) and report them only once in the end if no matching pairs were found at all.