for unique constraint check, should null = null or null <> null? (typically, null <> null in sql world - but this may not be what user expects. ask them to clarify, and treat appropriately)
see https://www.enterprisedb.com/postgres-tutorials/postgresql-unique-constraint-null-allowing-only-one-null for example