Guradian contact update view (version 3)
replaces !2046 (closed)
The main difference compared to !2046 (closed) is that the study-local ID is not stored in the database but computed as a hash from available data. That way we do not have any redundant data in the database.
The hash is generated from subject.slug
(UUID4) so that a brute force attack is not feasible.
The URLs get quite long (114 chars + domain), but that is still well within the ~2000 chars that are supported by browsers.