The Unique Indexes section ( https://www.postgresql.org/docs/15/indexes-unique.html) does not mention the new NULLS [ NOT ] DISTINCT capability of indexes ( https://www.postgresql.org/docs/15/sql-createindex.html), and it probably should.
Specifically, it has the exact wording from previous versions (emphasis added): When an index is declared unique, multiple table rows with equal indexed values are not allowed. *Null values are not considered equal*. We should consider adding "unless the NULLS NOT DISTINCT clause is used when creating the index", or something to that effect.