I noticed this while writing up the benchmarks, but calling rclcpp_lifecycle::LifecycleNode::get_available_transitions() will return all 25 transitions, but calling the get_available_transitions service will only return the available transitions for the current state. In order to get all 25 transitions from a service, you need to call the get_transition_graph service.
Perhaps it would make sense to add a get_transition_graph method to the lifecycle node and update get_available_transitions to only return the available transitions of the current state so that it matches the similarly named services?
Thoughts maintainers/author? @wjwwood @ivanpauno @mabelzhang @Karsten1987