I was thinking about this while replying to another thread. Perhaps hearthling traits should be divided into 3 categories, with set conditions for that trait to be applied when the hearthling is generated. The 3 categories would be temperament, aspirations and quirks.
Temperament: All hearthlings come with a random temperament not affected by stats or environment. From optimistic to pessimistic and any others, this will give all hearthlings a bit of personality. It’s a little bit weird having a hearthing show up and it’s only defining trait is they like vegetables or something. All should have a bit of personality.
Aspirations: Not all hearthlings will have this, but a minimum stat level is required to have one. The minimum should not be too high, perhaps just a 3 or maybe a 4. A minimum of 3 mind for a specific crafting dream like weaver, or a minimum of 3 spirit and mind for a cleric dream.
Quirks: Completely random with nothing to determine if a hearthling will be quirky or not. This will include things like cultist, animal companion, that crafting one that says a hearthling must craft at least one thing per day, glutton, etc.