This is the bug MC-140961: "Villager babies have no profession"
When you spawn baby villagers, the command feedback actually tells you "Summoned new Nitwit", "Summoned new Cartographer" and so on, but they all turn out to have brown coats. When they grow up, they get their proper coats, but if they randomly happen to keep a brown coat, you cannot trade with them.
This apparently means that there can be no new farmers, fishermen, shepherds or fletchers (that can trade) apart from the ones generating with villages. This is a pretty big problem for Skyblock-type maps, since it makes optaining some items considerably harder, for example cookies would now require a wandering trader.
Since this is a pretty bad bug, I invite everyone reading this to vote for it on the bugtracker, so that it gets more attention from the developers and hopefully gets fixed before 1.14.0.