Four of the six land on their own. The other two are yours to write.
The common read: a <div popover> behaves like dialog.showModal(), so focus lands inside it, focus is trapped while it is open, and a screen reader announces it as a dialog.
Four landed and two did not, and the two that did not are the pair you were most likely to skip. Top layer placement and ::backdrop are unconditional: the attribute alone put the menu above a sibling carrying z-index: 2147483647, measured as a pixel and not as a hit-test, and a ::backdrop rule painted across the rest of the viewport in the same frame.
Light dismiss and the close request are on by default and are an opt-out rather than a gift: choose popover="manual" and both go, in all three engines, which is what choosing that value is for. This ships in every browser. It landed recently enough that it is worth checking against your own support floor.
Focus is the one that costs you. Open a <div popover> and focus stays exactly where it was, measured on a button that had it a moment earlier and still had it afterwards; put autofocus on one control inside and focus lands there. There is no trap either, as far as the spec text goes: nothing in the sources examined states that a popover holds focus, so hold that as unstated rather than promised.
Implicit ARIA is thinner than it sounds: the attribute grants no role at all, ever, and the invoker relationship the guides describe rides on popovertarget rather than on popover.
Write popover, take the four, and then write the two: autofocus on the first control that matters, and the role and label the element would have needed anyway. That is a much shorter list than the component you are deleting, and it is a list rather than a promise.
