The NoOp destination plugin was needed because the NullDestination plugin appears to not work on purpose.
I had a Drupal 8 migration where there was some data that was available, but not available from the source DB. However, I was able to get this data in a separate CSV file and a value in the source db was available in this CSV file also. So I had a way around the issue.
This process plugin was created due to a dodgy source repository. Not all the files were available and the default file_copy plugin would crash and burn if the source was not there. This plugin can be used in the process section of a Drupal 8 migration like this;