swap state of subscription properly when it updates
add cluster ctrl spec about unsubscribing