All of these use cases are extremely odd and I don't think we should cover them as we risk to over engineer this section in trying to predict what the user is typing.
type new recipient with email in angled brackets; accidentally omit the trailing bracket, press ENTER:
John Doe <email@example.com
John Doe <firstname.lastname@example.org gets converted to
John Doe <email@example.com <> and highlighted as a wrong address, so for me this is correct.
<firstname.lastname@example.org> gets displayed as email@example.com, but the input still keeps the stale angled brackets
Why would you type an address with
<firstname.lastname@example.org> instead of a simple
email@example.com? That doesn't make sense for the autocomplete and those symbol gets properly stripped away, also in the input field for me as I don't see them when I edit the pill.
editing John <firstname.lastname@example.org> to become |John <email@example.com>, firstname.lastname@example.org| gets displayed as email@example.com
Once again, you're trying to input multiple addresses into one pill, which is wrong and not allowed. A pill is a single address, if a user edits a pill is to change that address, and if he tries to add multiple addresses, the pill correctly strips them away and keeps the last one.
This is a WONTFIX for me.