Page MenuHomeWildfire Games

0 A.D. Empires Ascendant UserReporter Privacy Policy
ClosedPublic

Authored by elexis on Jul 26 2018, 1:16 AM.

Details

Summary

Similar to D1590 make a GDPR proof policy for the User Reporter, covering the current state and plans by vladislav

Test Plan

Read the GDPR, especially:
https://gdpr-info.eu/

Article 4 Definitions
Article 6 Lawfulness of Processing
Article 8 Childs Consent
Article 12 Transparency
Article 15 Right of access
Article 16 Right of Rectification
Article 17 Right of erasure

Diff Detail

Repository
rP 0 A.D. Public Repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

bb created this revision.Jul 26 2018, 1:16 AM
Owners added a subscriber: Restricted Owners Package.Jul 26 2018, 1:16 AM
bb edited the test plan for this revision. (Show Details)Jul 26 2018, 1:17 AM
Vulcan added a subscriber: Vulcan.Jul 26 2018, 1:23 AM

Successful build - Chance fights ever on the side of the prudent.

Linter detected issues:
Executing section Default...
Executing section Source...
Executing section JS...
|    | [NORMAL] ESLintBear (semi):
|    | Missing semicolon.
|----|    | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/pregame/mainmenu.js
|    |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/pregame/mainmenu.js
|  51|  51| 
|  52|  52| function initUserReport()
|  53|  53| {
|  54|    |-	let userReportPrivacyPolicy = Engine.TranslateLines(Engine.ReadFile("gui/pregame/Privacy_Policy.txt"))
|    |  54|+	let userReportPrivacyPolicy = Engine.TranslateLines(Engine.ReadFile("gui/pregame/Privacy_Policy.txt"));
|  55|  55| 	Engine.GetGUIObjectByName("userReportPrivacyPolicyMainText").caption = userReportPrivacyPolicy;
|  56|  56| 
|  57|  57| 	let agreeTerms = Engine.CalculateMD5(userReportPrivacyPolicy) == Engine.ConfigDB_GetValue("user", "userreport.privacy_policy");

binaries/data/mods/public/gui/pregame/mainmenu.js
|  54| »   let·userReportPrivacyPolicy·=·Engine.TranslateLines(Engine.ReadFile("gui/pregame/Privacy_Policy.txt"))
|    | [NORMAL] JSHintBear:
|    | Missing semicolon.

Link to build: https://jenkins.wildfiregames.com/job/differential/686/display/redirect

bb added inline comments.Jul 26 2018, 1:32 AM
binaries/data/mods/public/gui/pregame/mainmenu.js
54 ↗(On Diff #6818)

semi

Itms requested changes to this revision.Jul 26 2018, 3:49 PM

Here are a couple comments on the privacy policy itself. I haven't tested the code, I can find some time for that if needed.

binaries/data/mods/public/gui/pregame/Privacy_Policy.txt
21 ↗(On Diff #6818)

I'd write "excluding" instead of "except" but that's really a minor request :)

26 ↗(On Diff #6818)

"The User ID acts as your pseudonym among all users of the service. It is selected at random and is not associated with your IP during the processing of your data."

27 ↗(On Diff #6818)

"Unless your IP is stored", I believe. We'll keep storing the rest of the data in an anonymous way after one month.

31 ↗(On Diff #6818)

I think we could clarify that (because it sounds like we keep the IPs and use them to identify the user).

"You will have to provide the User ID so we can select your data in our database. We also ask for your IP address to prevent abuse of personal data requests."

This revision now requires changes to proceed.Jul 26 2018, 3:49 PM
bb updated this revision to Diff 6821.Jul 26 2018, 4:40 PM
bb added inline comments.
binaries/data/mods/public/gui/pregame/Privacy_Policy.txt
26 ↗(On Diff #6818)

we might need to associate in case of abuse, so adding that

bb marked 3 inline comments as done.Jul 26 2018, 4:41 PM

Build failure - The Moirai have given mortals hearts that can endure.

Link to build: https://jenkins.wildfiregames.com/job/differential/687/display/redirect

Itms added a comment.Jul 26 2018, 5:01 PM
In D1598#64094, @Vulcan wrote:

Build failure - The Moirai have given mortals hearts that can endure.

Link to build: https://jenkins.wildfiregames.com/job/differential/687/display/redirect

My bad! Retrying.

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/differential/693/display/redirect

bb updated this revision to Diff 6829.Jul 30 2018, 2:34 PM

fix an elexis' irc comment

Successful build - Chance fights ever on the side of the prudent.

Link to build: https://jenkins.wildfiregames.com/job/differential/698/display/redirect

bb updated this revision to Diff 6835.Aug 3 2018, 12:52 AM

Reflect the duplication avoid

Vulcan added a comment.Aug 3 2018, 1:00 AM

Successful build - Chance fights ever on the side of the prudent.

Linter detected issues:
Executing section Default...
Executing section Source...
Executing section JS...
|    | [NORMAL] ESLintBear (semi):
|    | Missing semicolon.
|----|    | /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/pregame/mainmenu.js
|    |++++| /mnt/data/jenkins-phabricator/workspace/differential/binaries/data/mods/public/gui/pregame/mainmenu.js
| 204| 204| function updateTermsFeedback()
| 205| 205| {
| 206| 206| 	let feedbackText = checkTerms();
| 207|    |-	let userReportEnableButton = Engine.GetGUIObjectByName("userReportEnableButton")
|    | 207|+	let userReportEnableButton = Engine.GetGUIObjectByName("userReportEnableButton");
| 208| 208| 	userReportEnableButton.enabled = !feedbackText;
| 209| 209| 	userReportEnableButton.tooltip = feedbackText;
| 210| 210| }

binaries/data/mods/public/gui/pregame/mainmenu.js
| 207| »   let·userReportEnableButton·=·Engine.GetGUIObjectByName("userReportEnableButton")
|    | [NORMAL] JSHintBear:
|    | Missing semicolon.

Link to build: https://jenkins.wildfiregames.com/job/differential/702/display/redirect

elexis retitled this revision from 0 A.D. Empires Ascendant User Reporter Privacy Policy to 0 A.D. Empires Ascendant UserReporter Privacy Policy.Aug 10 2018, 3:21 PM
Stan added a subscriber: Stan.Aug 10 2018, 3:28 PM

Some little comments.

binaries/data/config/default.cfg
478 ↗(On Diff #6835)

Couldn't it be the game version ?

binaries/data/mods/public/gui/pregame/mainmenu.js
57 ↗(On Diff #6835)

Should there be caps everywhere ?

binaries/data/mods/public/l10n/messages.json
367 ↗(On Diff #6835)

Does it make sense to have caps for a txt file while the one below doesn't ?

elexis commandeered this revision.Oct 3 2018, 5:18 PM
elexis edited reviewers, added: bb; removed: elexis.
elexis added a comment.Oct 3 2018, 5:23 PM

(Was mostly a copy&paste from D1590 and thus had the same mistakes, most importantly was missing the entire paragraph about user rights. Still greatly appreciating the feedback by bb who at the time had actually read the GDPR and argued based on the orders therein. The work was continued at https://github.com/bb-bb/0ad/tree/terms, then https://github.com/elexis1/0ad/tree/terms and https://github.com/elexis1/0ad/tree/terms2 The code refactoring was committed separately.)

binaries/data/mods/public/l10n/messages.json
367 ↗(On Diff #6835)

A separate resource seems better than continuing to add to gui-almost-everything resource. I hope it won't bring us into trouble like it did last time, I hope Itms saw it when he did https://github.com/elexis1/0ad/pull/1

Itms added a comment.Oct 5 2018, 3:22 PM

About https://github.com/elexis1/0ad/pull/1, do you have any comments on my suggestions? I really liked this iteration, with generalized mention of the relevant GDPR articles, so I tried to make improvements where I saw fit, but the work was definitely good enough to replace the different Phabricator patches, if you want to finish the review here rather than on GitHub.

binaries/data/mods/public/l10n/messages.json
367 ↗(On Diff #6835)

I don't think those caps can create trouble. On the topic of creating a new file, I'll be super careful with Transifex for this string freeze. As long as we make sure Transifex doesn't forget to update resources, there shouldn't be any actual bugs.

elexis added a comment.Oct 5 2018, 4:12 PM
In D1598#65210, @Itms wrote:

About https://github.com/elexis1/0ad/pull/1, do you have any comments on my suggestions? I really liked this iteration, with generalized mention of the relevant GDPR articles, so I tried to make improvements where I saw fit, but the work was definitely good enough to replace the different Phabricator patches, if you want to finish the review here rather than on GitHub.

Currently at 40 of maybe 80 inline comments, seeking to commit an updated version of the UserReporter terms, unless you want to review it again.

binaries/data/mods/public/l10n/messages.json
367 ↗(On Diff #6835)
Itms added a comment.Oct 5 2018, 4:21 PM
In D1598#65212, @elexis wrote:

Currently at 40 of maybe 80 inline comments, seeking to commit an updated version of the UserReporter terms, unless you want to review it again.

As I said, I was happy with the terms I made a pull request on, so I trust you to commit something that I'm happy with. It's up to you to ask a review from me if you want one 🙂 I'll let you know if I have remarks anyways.

binaries/data/mods/public/l10n/messages.json
367 ↗(On Diff #6835)

Ah you were right I missed it! I jumped right on the legal stuff.

It's a yes from me. It doesn't move unrelated strings to the new resource, so there is no risk for translators to loose their work. I will have to create the matching Transifex resource as soon as it's committed, though (but that's part of me being extra careful for A23b strings).

This revision was not accepted when it landed; it landed in state Needs Review.Oct 6 2018, 12:20 AM
This revision was automatically updated to reflect the committed changes.