properly debounce state propagation