For the record: after the "computer disaster", I started working again on this.
For the moment I set up a way to force the acceptance of the agreement, on "no accept" the user is directly sent to the "delete my account" (TBH I think an option to "accept the agreement" is missing at that point, something to work on), now I'm working on a parallel privacy policy that will work mostly the same (actually is almost exactly the same code, just with "privacy policy" instead of "agreement".
I still need to integrate the privacy policy in the registration process. I plan to re-use the settings of the agreement in terms of presentation, so if the agreement is presented as standalone page at registration, below it the privacy policy will be shown (for the moment I don't think I can go down the route of having two distinct checkboxes to accept both, it will be the normal button), or alternatively there will be the checkboxes (and both will be mandatory).
Future improvement: give the possibility to split the privacy policy into multiple chunks each one of them to be accepted, and maybe have also the possibility to have pieces that can be not accepted (but TBH this will need some thoughts because in fact it's not possible to tie the text to the underlining intent, so it's not possible to make sure that the relevant code is not run when a certain text is associated to a certain checkbox).
Any time the admin requires the members to accept an agreement/privacy policy, all the agreements/privacy policies (because of the possible multiple languages) are backed up with a unique id and the members are requested to accept the latest one.
It is responsibility of the admin ensure the various versions are kept aligned, there are very little tricks we can apply to ensure that.
Potential improvement: allow the admin to force the use of policy only on certain languages in order to ensure it is always the correct one.
Future improvement: show the members a list of the agreements accepted.
I'm not yet sure if it is worth providing a default text for the privacy policy.
I'm thinking of adding a link to the privacy policy somewhere in the UI.
That said, I'm a bit behind my original schedule, anyway I want to have it out with 1.1.4, so I'll probably post a testing patch in the next few days.