Why does this use the subjunctive “hayas” instead of just “has”? Is it because it occurs in the “que” part of the clause? Is this necessary or mandatory to do or would “has venido” also be valid? Does “hayas venido” kind of emphasize that it was not fully determined earlier that the person was going to come?
The two clues here are “feliz” and “que”. The first expresses an emotion which triggers the use of the subjunctive in dependent clause. The second, starting a dependent clause, indicates that there is “two wills” or, in other words, more than one actor, which is necessary for the subjunctive to apply. As I see it, the main point about “two wills” is that no-one can know another person’s mind therefore there’ll always be some doubt when speaking about their actions / thoughts.