I have a few tools to help adding UPRNs (which I do mean to make generally available at some point - if my small server can cope). I start with a custom tile layer layer in JOSM with UPRN points to check they match up to buildings, then a script in JOSM to conservatively match items in the current viewport to UPRNs. I have a mapcss theme to show items with a UPRN to see the impact. I then add less obvious items (mostly street UPRNs and UPRNs linked to large areas) by hand. I then check back to the original tile layer, to see what may be missing.