Code-wise (as in, I don't know the full intention. I can only surmise the intention from the code), it's tied to points that are only given (at the time of writing) via specific decisions. There are 2 variables that collect points, (quirk)_encouraged and (quirk)_discouraged. Some checks check only for if one exists. Others check to see if one is larger than another. When it passes (or fails) the checks, the character can have different stats(not 100% accurate, but trying not to spoil anything), different set of dialogue, some different options (again, being super vague to not spoil anything), etc.