It isn't present perfect. Duo is trying to teach us to recognize when something is not present perfect.
In Italian, you can't say "His shirt has opened." It either has to open something or someone has to open it. So you can say Lei ha aperto la sua camicia -- She opened her shirt. Or la sua camicia si è aperta -- her shirt has opened (itself).
But since neither of those was given here, we know that aperta must be an adjective and not a verb. Thus -- her shirt is open.
I said, "Your shirt is open," which was an honest mistake because I read it too quickly, and I usually say "his" or "her" when I see "sua". So I don't mind losing a heart for it, but wasn't I technically correct, fortuitously or not? Like in Spanish and Portuguese, couldn't you use "sua" in a formal you situation, say for example with a stranger passing by on the street?
"Her shirt was open" wouldn't be the present perfect, but rather one of the past tenses. You would say that if you were relating an anecdote to a friend about something that happened yesterday, last week, or ten years ago. So you would use a different tense of the verb "to be," in this case "era"/ "La sua camicia era aperta". However, you would say "Her shirt is open" if it is something that you notice in that moment, i.e. the present perfect.
A lot of confusion from this lesson comes from the fact that when we convert a verb into an adjective in English, we have very fluid rules about when to use the simple past, immediate past, and present verb formations (which is a heck of a lot more confusing for non-native English speakers than this is for us).
In English, one would say: "The shop is open" (present) In Italian, one would say: "Il negozio è aperta" (present perfect) HOWEVER In English, one would say: "The shop is closed" (past) In Italian, one would say: "Il negozio è chiuso" (still present perfect)