You are browsing a read-only backup copy of Wikitech. The live site can be found at wikitech.wikimedia.org
Add Link
Revision as of 11:43, 13 October 2020 by imported>Kosta Harlan (→High-level summary)
This page contains information about the infrastructure used for the Add a Link structured task project (task T252822)
High-level summary
- The Link Recommendation Service is accessible via HTTP (see task T258978), it responds to a POST request containing wikitext of an article (or possibly Parsoid HTML, to be determined) and responds with a structured response of link recommendations for the article. It does not have caching or storage; the client (MediaWiki) is responsible for doing that task T261411.
- The search index stores metadata about which articles have link recommendations via a field we set per article
- A MySQL table per wiki is used for caching the actual link recommendations (format to be determined task T261411)
- A maintenance script regularly generates link recommendations by iterating over each Search/articletopic and calling the Link Recommendation Service
- the maintenance script caches the results in the MySQL table, then sends an event to Event_Platform/EventGate, where the Search pipeline ensures that the index is updated with the links/nolinks metadata for the article.
- on page edit and deletion, link recommendations are regenerated via the job queue and the same code and APIs that are utilized in the maintenance script
Open questions
- Store the link recommendations in WANObjectCache or in a MySQL table? task T261411(needs SRE/DBA input)
- Attempt to use wikitext offsets (or HTML equivalent) or search for list of words in VE's editable surface (Growth/Editing/Parsing)
Updates
12 - 16 October 2020
- Growth: Engineers meet to discuss schedule, order of tasks, etc
5 - 9 October 2020
- Growth / Editing: Exploring ways to bring link recommendation data into VisualEditor
- Growth / Research: Discussing repository structures in preparation for deployment pipeline setup
- Growth / SRE / Research: Discussing how to get mwaddlink-query / mwaddlink into production
Teams / Contact
- Growth (primary stakeholder, technical contact for project is Kosta Harlan, product owner is Marshall Miller)
- Search Platform
- SRE
- Research
- Editing
- Parsing