Page MenuHomePhabricator

[Epic] Update Mobile Apps Team-owned products that may be affected by IP Masking
Open, MediumPublic

Description

IP Masking will affect a number of the wikipedia mobiles apps features. This task is for tracking work to update Wikipedia mobile apps ahead of IP Masking being enabled on WMF sites.

Non-exhaustive Engineering task list

  • Support processing the assignment and use of a temporary account to a user
    • iOS task: TBD
    • android task: TBD

Non-exhaustive Design task list

  • IP Masking design adjustments
  • Editting flow - Notice to display to users warning they'll be given a temporary account when trying to edit
    • iOS: Covered in T337250
    • android: Task TBD
  • Talk pages

Non-exhaustive Data task list

  • Update schemas to support and measure temp accounts
    • iOS: TBD
    • android: TBD

Outstanding questions

  • How will cross domain requests be handled?
    • Both apps already pass centralauth cookies across all supported domains automatically, so this should not be an issue.
  • How do talk page signatures work with the merging of temp accounts to permanent?
  • How would this affect reading lists?
  • Will temp accounts support notifications?
  • How will the deployment work? Do we need to be able to support IP based and temporary accounts

Slide deck with technical considerations

https://docs.google.com/presentation/d/1qY9PwdiAcoORrDUQUNX2juQQJhP_Sss8RRo8Afn1u-U/edit?usp=sharing

Event Timeline

LGoto triaged this task as Medium priority.Feb 21 2023, 5:16 PM
LGoto moved this task from Needs Triage to Up Next on the Wikipedia-Android-App-Backlog board.

Flagging my comment here: T333473#8740476 because it feels like the reveal functionality should be an additional task.

Just a note for, @Niharika + @Tchanders.

Generally the beta cluster has always been a problematic testing location for the apps since whilst it strives to, that cluster doesn't replicate production in a consistent manner, and for many experiences its simply just broken and its not something that apps engineering can rely on to support this work.

My understanding is that this feature wouldn't be enabled in production until much later this year with a fairly short turn around time aimed for between enabling in places like testwiki / test2wiki and enabling more broadly elsewhere.

iOS and Android have done some initial investigations but there are some technical risks that we aren't able to fully assess.

The most challenging issues are that:

  • Our suggested edits functionality rely on a web of interaction between commons, wikidata and wikipedia via API's. We only provide this to logged in users but we will want to verify temporary accounts interact with this accounts correctly.
    • At minimum can we enable this extension on more wiki's on the beta cluster.
    • This won't solve everything as it is made more complicated by the fact that beta commons is pretty broken. Images don't render and looks like structured data on commons there isn't currently functioning.
    • The maintainers, structured data, are also head down on grant work that takes priority at the moment so I don't know when or if they expect to work on ip masking work.
  • Production is currently the only place that supports push notifications.
    • Could deployment to test.wikipedia.org / test.wikidata.org occur earlier, even in some limited form? This would probably allow us to verify with much much much more certainty both for the above issues and this one?
Seddon updated the task description. (Show Details)

Thanks for this @Seddon - we also have a need to test on testwiki, since a lot of our changes are in CheckUser. We're currently working out an estimate for when we can deploy to testwiki (and which one), so will update you on this in a couple of weeks when @Niharika is back.

Thanks for this @Seddon - we also have a need to test on testwiki, since a lot of our changes are in CheckUser. We're currently working out an estimate for when we can deploy to testwiki (and which one), so will update you on this in a couple of weeks when @Niharika is back.

Awesome thanks @Tchanders!

Seddon updated the task description. (Show Details)

From Dmitry: deep dive into IP masking on the Beta cluster (i.e. fully integrating the app with it, and making sure things work) https://docs.google.com/presentation/d/1uThBQetCKWD7XEL1RMK3cJ2RvhlQIxGGvC4RigCHkAY/edit#slide=id.gb558081a57_0_50

Thanks for this @Seddon - we also have a need to test on testwiki, since a lot of our changes are in CheckUser. We're currently working out an estimate for when we can deploy to testwiki (and which one), so will update you on this in a couple of weeks when @Niharika is back.

Awesome thanks @Tchanders!

@Tchanders and @Niharika just a ping to check in on timing for this. Design work is starting to come together for both iOS and Android and we could do with having this in place to be able to kick off engineering work

Thanks for this @Seddon - we also have a need to test on testwiki, since a lot of our changes are in CheckUser. We're currently working out an estimate for when we can deploy to testwiki (and which one), so will update you on this in a couple of weeks when @Niharika is back.

Awesome thanks @Tchanders!

@Tchanders and @Niharika just a ping to check in on timing for this. Design work is starting to come together for both iOS and Android and we could do with having this in place to be able to kick off engineering work

Apologies about a late response. The latest timeline is to deploy on testwiki in early January 2024 and start with pilots tentatively in March. We are somewhat flexible so if it takes the Apps teams longer to get the changes in we can delay the pilot deploy (as needed).