[ ] Make an alernate version of our node architecture using action nodes instead of publisher/subscribers
[ ] Measure the latency and compare this with the publisher/subscriber architecture for different FPS limits
[ ] Use actions for long-running tasks that require feedback during execution. Break down complex tasks into a sequence of smaller steps, each represented by a goal, result, and feedback.
[ ] Set appropriate timeouts for actions to handle situations where a task takes longer than expected. Implement preemption if your node needs to interrupt an ongoing action and switch to a new task.
[ ] Utilize the feedback mechanism in actions to provide real-time updates on the progress of a task.
[ ] Include error handling with error codes and responses for various issues in operation