Page MenuHomePhabricator

MobileWikiAppLanguageSettings schema receives incorrect format of values
Closed, ResolvedPublicBUG REPORT

Description

From @DLynch:

A lot of eventlogging validation errors in the MobileWikiAppLanguageSettings schema that seem to be coming from the Android app. There's two things going on:

  1. Improperly capitalized values in the source enum, e.g. 'SEARCH' is not one of ['onboarding', 'settings', 'search', 'announcement', 'chinese_variant_removal']
  1. Values that aren't in the source enum even were they correctly capitalized, e.g. 'LANG_VARIANT_DIALOG' is not one of ['onboarding', 'settings', 'search', 'announcement', 'chinese_variant_removal']

We recently converted some files from Java to Kotlin and that should be investigated to see if similar happens in some other places.
https://github.com/wikimedia/apps-android-wikipedia/search?q=LANG_VARIANT_DIALOG

cc @SNowick_WMF

Event Timeline

We have done the Constrants Kotlin conversion and due to the reserved name name of the enum class in Kotlin, it will output the item name (the ones with capital letters) instead of assigned names.
https://github.com/wikimedia/apps-android-wikipedia/search?q=%22source.name%22

and it affected the following schema:
https://meta.wikimedia.org/wiki/Schema:MobileWikiAppEdit
https://meta.wikimedia.org/wiki/Schema:MobileWikiAppSuggestedEdits
https://meta.wikimedia.org/wiki/Schema:MobileWikiAppTalk
https://meta.wikimedia.org/wiki/Schema:MobileWikiAppSuggestedEditsFeed
https://meta.wikimedia.org/wiki/Schema:MobileWikiAppLanguageSettings

looks like only MobileWikiAppLanguageSettings has a enum type of source and that's why it throws error messages.

Hi @SNowick_WMF

Looks like most of the errors above are because of outdated schema or wrong formats of values, should we also need to handle these in order to proceed with the notification ABC test?

I have a PR of fixing the issues related to the Constrants class, and if we want to fix all the remaining issues, we can discuss this with @Sharvaniharan.
https://github.com/wikimedia/apps-android-wikipedia/pull/2754

Hi @SNowick_WMF ... I went through all the errors and here are the findings. The fixes that I have put in I will push to beta, but will try to track the few that we discussed this morning.

  1. The MobileWikiAppLogin and MobileWikiAppCreateAccount errors
'reading_lists_manual_sync' is not one of ['edit', 'blocked', 'navigation', 'onboarding']

are from older versions of the app, which did not have the updated revision number of the schema, which now contains more login source options.
So no fix needed for this

  1. The MobileWikiAppSuggestedEdits funnel errors are also from a very old version, although in this case the revision number is correct. I see in the code that we always send the 'scorecard_opened' parameter.
  1. The MobileWikiAppProtectedEditAttempt schema is no more used in the app and is from an older version.
  1. MobileWikiAppLanguageSearching link is not working.
  1. MobileWikiAppDailyStats, MobileWikiAppSessions, MobileWikiAppEdit, MobileWikiAppFeedConfigure, show errors like 'Unterminated string' and 'invalid escape' and 'utf-8' which I am not able to track yet.. am on it.

MobileWikiAppDailyStats and MobileWikiAppArticleSuggestions have the same errors but very old version of the app

  1. MobileWikiAppNotificationInteraction 2 fixes were put in for required field and mismatched type.
  1. MobileWikiAppFindInPage put in a fix for the required field.

Verified that version 2.7.50372-beta-2021-08-26 has resolved errors previously seen in MobileWikiAppNotificationInteraction data. Only errors in Logstash are only for version 2.7.50370.

@SNowick_WMF Perfect! thank you for checking! Closing this.