Some of the perks you suggest directly modify their base stats; and some are entirely centered around a specific stat, while others actually go against or ignore the stat system in favour of representing experience in the job. What do those have to do with traits? Well, the stat and trait systems are supposed to work together to describe/define the hearthling’s personality, and remember that all systems are eventually meant to work together to simulate the hearthlings as “living” beings with opinions, reactions and emotions. The perks you’re describing can override the hearthlings’ opinions and natural reactions to events, which doesn’t sound like a bad thing, but can lead to a situation where it doesn’t matter who you pick to fill a specific role because eventually they’ll get a buff which supersedes any natural aptitude/advantage anyway.
Moreover, half of these perks describe an attitude – “enjoyable labour” from the potter for example, or “improved inventiveness”, or even “pickaxe and ingots”; they all change the way a hearthling is likely to act when they go about their work (and also how they’ll think about their work while they’re doing it.) You might have a claustrophobic hearthling who loves fresh air and plants as well as loving socialising with other hearthlings (these aren’t just personality traits, they would come into the upcoming decor system), and suddenly they reach level 2 in blacksmithing and they decide they’d basically rather be a dwarf and live in a cave, likely away from other hearthlings (since it’s not likely they all want to live in caves nearby), so their personality has literally done a 180 turn because of a perk. Or, to give a less extreme example, you might have a carpenter with high Diligence and Inventiveness and low Compassion, so it makes sense that they’d be a speedy builder who doesn’t care about the forest being torn down around them; but the player decides they’d rather take Reforestation Effort because they need more trees, and then at level 6 again take Bowmaker for the gameplay unlock rather than the perk which would fit into the story a little better (i.e. very diligent and inventive hearthling becomes furniture artisan).
Now, it’s important that players get to write their own stories; and if the hearthlings are picking their own trait there’s even more chance of it seeming odd when one picks a perk which goes against everything else they’re “set up for.” However, I expect that a lot of players will feel the need to pick the perk which works best for min/maxing rather than the one which fits the story best, and that will have a dampening effect on the player’s attachment to their hearthlings. If we see them as a tool or trainee to mould how we see fit, they become less of a character in their own right and more like a lump of clay; what we want is more like a gemstone which we can polish into a design that accentuates the natural features, but still features them and doesn’t try to hide, replace or overcome them.
So, I think that the answer lies somewhere between giving the choice to the player and giving it to the hearthling – I don’t think RNG is the way to go at all, though, the deciding factor needs to be something that the player can control but not directly map out.
A lot of my concerns relate to features which are heavily in progress, or still on the drawing board; and I see a lot of personality implied in the coincidental assortment of stats and traits which other players will probably just see as their hearthlings’ baselines… but that’s exactly why it’s concerning to me, I guess – taking this path means promoting not just min/maxing, but promoting the idea that hearthlings are tools to be used towards an end. I’d prefer to see the perks system promote the hearthlings’ individuality, commemorating their achievements in the field rather than being a goal the player works towards achieving purely so they can have a hearthling to fulfill certain jobs.