fix: cleanup & adjust code to signal dispatcher