todo: fix key error in habit_is_bonus()