I think there should be another way to fulfill commitments other than by asking/answering 10 questions/answers total: Reputation.
For example, I've got 223 reputation on GraphicDesign.SE, but I've only got 7 questions/answers. (Due to the high number of answers and the low number of questions, it's difficult to find unanswered questions.)
- 150 users with 200+ rep (on pace for 71 users at 90 days)
So, shouldn't it be:
if((user.reputation >= 200) || ((user.questions + user.answers) >= 10)) user.commitment.fulfilled = true;