⚠️ Full disclosure: I use doctrine/mongodb, not the One True Reference Implementation, ORM; in case that makes a difference.
Although it has never been possible to mark "root" documents final, embedded documents may be marked final since they are embedded inside other classes when generating proxies. Since 2.8.0, however, the following error is thrown where Foo is an @ODM\EmbeddedDocument class.
[Doctrine\Common\Proxy\Exception\InvalidArgumentException]
Unable to create a proxy for a final class "Foo".