Migrate sub_process plugin is not working
OK - I spent far more time than I care admit debugging this one. (doesn't help that PHPStorm is very unfriendly when it comes to stepping through a migration (e.g. I have not found a way to do it). Hope this saves someone from the frustration I had. 

Problem one: Source was not formatted correctly. It MUST follow the following structure:

$source = [
  'countries' =&gt; [
    0 =&gt; [
      'country' =&gt; 'US',
    ],
    1 =&gt; [
      'country' =&gt; 'CA',
    ],
  ],
];


The YAML for that is:

  constants:
    countries:
      - country: 'US'
      - country: 'CA'



Problem two: The implementation of sub_process was a little off. And a little off is like being on the wrong planet. It should like this

  field_locations:
    plugin: sub_process
    source: constants/countries
    process:
      country_code: country 


One thing that is not obvious (and would never be if you were actually "migrating" from D7 to D8 for example, is the source. 

Here, I am not actually migrating. It is an import from JSON. And, as it turns out, importing JSON can be a little unpredictable.
The final "gotcha" was that the key "country" had to relate to the source (which it usually does).  I had tried to slap in a different constant. (bad idea - though it could be done if that is really what is wanted.