Nothing Special   »   [go: up one dir, main page]

Page MenuHomePhabricator

[Spike] Decide where recommendations code should live
Open, MediumPublic1 Estimated Story PointsSpike

Description

Background

  • Community is concerned about features living in skins, and feature management lives in a few different repos. Consider the above to decide where recommendations code should be

User story

  • As a product team, we need to have a codebase location to start dev work

Requirements

  • Research codebase options and make a suggested decision

Design

N/A

Acceptance criteria

Share report of decision

Communication criteria - does this need an announcement or discussion?

N/A

Event Timeline

I assume the options would be:

  • Skin:Minerva
  • MediaWiki core
  • Extension:RelatedArticles
  • New extension

https://docs.google.com/document/d/1sP38KB3FAxNNv-uA0dH7ozSAYdvJJaEsNQY0fLrHiwM/edit?tab=t.0 might be a useful document for working through the right decision to make here.

ovasileva added a project: Spike.
Restricted Application changed the subtype of this task from "Task" to "Spike". · View Herald TranscriptThu, Nov 7, 8:57 AM
NBaca-WMF set the point value for this task to 1.Wed, Nov 13, 5:50 PM

Change #1092870 had a related patch set uploaded (by Jdlrobson; author: Jdlrobson):

[mediawiki/extensions/MobileFrontend@master] POC: Add search-no-results hook to MobileFrontend

https://gerrit.wikimedia.org/r/1092870

Change #1092871 had a related patch set uploaded (by Jdlrobson; author: Jdlrobson):

[mediawiki/extensions/RelatedArticles@master] POC: Wire RelatedArticles up to empty search hook

https://gerrit.wikimedia.org/r/1092871

Test wiki created on Patch demo by Jdlrobson using patch(es) linked to this task:
http://patchdemo.wmcloud.org/wikis/a5187de38d/w/

Jdlrobson lowered the priority of this task from High to Medium.Wed, Nov 20, 6:13 PM

Change #1088629 had a related patch set uploaded (by Jdlrobson; author: Kimberly Sarabia):

[mediawiki/extensions/MobileFrontend@master] Search Overlay: Fires events at certain points in workflow

https://gerrit.wikimedia.org/r/1088629

Jdlrobson added a subscriber: ovasileva.

TDLR: We'll add the experiment in RelatedArticles.

Places considered:

  1. MobileFrontend

Pro: We maintain it; Closest to search overlay
Con: Would require a lot of additional code. Would need to add a CdxCard or CdxMenuItem CSS component which would be thrown away at the end of the experiment

  1. Core

Pros: Closer to desired end result
Con: Would likely be seen as inappropriate for code of experimental nature and push back;would need to write all code from scratch;

  1. New extension

Pro: Easy to decommission
Con: would require security review and longer timeline; would need to write all code from scratch;

  1. RelatedArticles

Pros: Has all the code we need already written; already about recommendations; we already maintain; easy to remove at end of experiment
Cons: Styling would likely need adapting.

GOALS:

  • We want a unified experience on desktop and mobile
  • We want t ship an A/B test for mobile as quickly as possible.

CONSTRAINTS
We'll work within the following constraints:

  • We want to avoid spending too much time writing throw away code
  • if the experiment is successful we want to be able to move quickly
  • If the experiment on mobile is successful and we productionize it, it should be trivial to run the experiment later on desktop with the productinized code.

PLAN

To meet both of these goals, the following is proposed:

  • An essential work stream with the timeline for Q3 (March completion) date that migrates the mobile search to the Codex TypeaheadSearch. We are starting to document the work that entails in https://phabricator.wikimedia.org/project/view/7458/ but this is primarily work for the web team with at most 3 adjustments to Codex (which could be done by web team with DST providing code review/guidance).
  • For the purpose of the experiment, we will render a CSS-modified version of RelatedArticles in the mobile search. This is the quickest path to getting an experiment up and running as RelatedArticles already renders article cards based on an API query. It would be trivial to modify the API query or amend the display of cards for display. A proof of concept is provided
  • The expectation is the experiment code will be thrown away, and if the experiment is successful we will build on top of the CodexTypeaheadSearch which already has many of the foundations we need to build this feature.
  • If the experiment is not successful this is still worthwhile as building on top of the TypeaheadSearch feature will allow us to ship experiences to both mobile and desktop more easily than the current mobile stack.

NEXT STEPS

@ovasileva I've added this to our 1-on-1 to talk through in more detail and sign off.
T378117 would be the next task in the sequence to move this along.
In parallel we'd start preparing mobile for TypeaheadSearch (beginning with clean up tasks such as https://phabricator.wikimedia.org/T379861)

Change #1088629 merged by jenkins-bot:

[mediawiki/extensions/MobileFrontend@master] Search Overlay: Fires events at certain points in workflow

https://gerrit.wikimedia.org/r/1088629