- Subscribe to /abort_typing (std_msgs/Bool) — when received, stop sending characters immediately - On typing complete OR abort: publish "Complete" or "Aborted" to /typing_status, then call rclpy.shutdown() - On abort, publish one final "BACKSPACE" if a keypress was in-fligh