Fix recursive watch and apply