According to Wiktionary the word for boyfriend, koramiko, comes from:
koro (“heart”) + amiko (“friend”)
Yes, but note: "necesejo" is only "bathroom " in the sense of the American euphemism for "toilet". The room where the bath is situated is "banĉambro". I have found that Duolingo usually accepts "toilet" or "bathroom" as a translation for "necesejo".
well in russian it's called нужник (needer) from time to time. it has same root as нужно (need). same with koramiko. it's old and not used anymore but we have "сердечный друг" (exactly as in esperanto).
but kompatinda for example is "poor" in english and "бедный" in russian which also in both cases can be used to describe people without money. esperanto has a really good instrument to avoid homonyms.
Because it is "al vi" (= to you) and "mian koramikon" (= direct object of the verb). Mi prezentas mian koramikon = I introduce my boyfriend. [NOT to my boyfriend — the boyfriend is the direct object, i.e., the one who is being introduced]
Mi prezentas al vi… = I present (to) you [where "you" is the indirect object. You are not being introduced — something/someone is being introduced to you].
In short, "I introduce you to my boyfriend" would be "Mi prezentas vin al mia koramiko".
I understand what you are saying, and with a different verb I am sure I would answer how you describe. But an introduction is a mutual exchange. There substantially is no difference between introducing someone saying either (1) a this is b; b this is a; or (2) b this is a; a this is b. So that is why when translating this sentence from Esperanto to English the English speaker would think either would be an acceptable translation.
I disagree. That applies to many situations, not just introductions. For example: "I am near you" is, in practice, equivalent to "You are near me".
It would be an acceptable translation if only the gist were important. But Duolingo's accepting it would encourage sloppiness. Correctly learning the language is more than being able to understand the broad meaning. Now, if the teacher were human (or even a reasonably sophisticated AI), such a mistranslation with similar meaning could be accepted at first and corrected later as the learner got to a more advanced level. But it is dangerous to do so in an automated learning environment like Duolingo. It is certainly better to bring subtle differences to the learner's attention so that mistakes aren't learnt from the start itself — unlearning mistakes is more difficult.