Page MenuHomePhabricator
Feed Search

Today

santhosh updated the task description for T416659: Host sentence-transformers/LaBSE model in LiftWing.
Mon, Feb 9, 6:57 AM · Language and Product Localization, Machine-Learning-Team
santhosh added a comment to T403146: Explore and evaluate Section suggestions based on language agnostic embedding similarity.

Once T416659: Host sentence-transformers/LaBSE model in LiftWing is resolved, the model infrastructure dependency for this task will also be ready

Mon, Feb 9, 5:40 AM · ContentTranslation
santhosh added a comment to T416659: Host sentence-transformers/LaBSE model in LiftWing.

Here is nodejs client code that can give cosine similarity based on the above service.
Pull the above patch, then

docker compose build labse-embeddings
docker compose up labse-embeddings

Get this code,

1#!/usr/bin/env node
2
3const http = require("http");
4
5/**
6 * Get embedding vector from the API
7 * @param {string[]} text - Text to get embedding for
8 * @returns {Promise<number[]>} - Embedding vector
9 */
10async function getEmbedding(texts) {
11 const postData = JSON.stringify({
12 input: texts,
13 });
14
15 const options = {
16 hostname: "localhost",
17 port: 8080,
18 path: "/v1/models/labse-embedding:predict",
19 method: "POST",
20 headers: {
21 "Content-Type": "application/json",
22 "Content-Length": Buffer.byteLength(postData),
23 },
24 };
25
26 return new Promise((resolve, reject) => {
27 const req = http.request(options, (res) => {
28 let data = "";
29
30 res.on("data", (chunk) => {
31 data += chunk;
32 });
33
34 res.on("end", () => {
35 try {
36 const response = JSON.parse(data);
37 // Adjust this based on the actual API response structure
38 const embeddings = response.data;
39 resolve(embeddings);
40 } catch (error) {
41 reject(new Error(`Failed to parse response: ${error.message}`));
42 }
43 });
44 });
45
46 req.on("error", (error) => {
47 reject(new Error(`API request failed: ${error.message}`));
48 });
49
50 req.write(postData);
51 req.end();
52 });
53}
54/**
55 * Calculate cosine similarity between two normalized vectors
56 * @param {number[]} vec1 - First normalized vector
57 * @param {number[]} vec2 - Second normalized vector
58 * @returns {number} - Similarity score between -1 and 1
59 */
60function cosineSimilarity(vec1, vec2) {
61 if (vec1.length !== vec2.length) {
62 throw new Error("Vectors must have the same length");
63 }
64
65 let dotProduct = 0;
66 for (let i = 0; i < vec1.length; i++) {
67 dotProduct += vec1[i] * vec2[i];
68 }
69
70 return dotProduct;
71}
72
73/**
74 * Compare two strings for similarity using embeddings
75 * @param {string} str1 - First string to compare
76 * @param {string} str2 - Second string to compare
77 * @returns {Promise<number>} - Similarity score between 0 and 1
78 */
79async function compareStrings(str1, str2) {
80 console.log("Getting embeddings ...");
81 const embeddings = await getEmbedding([str1, str2]);
82 console.log("Calculating similarity...");
83 const similarity = cosineSimilarity(
84 embeddings[0].embedding,
85 embeddings[1].embedding,
86 );
87
88 return similarity;
89}
90
91// Main execution
92async function main() {
93 const args = process.argv.slice(2);
94
95 if (args.length < 2) {
96 console.error("Usage: node compare-strings.js <string1> <string2>");
97 console.error('Example: node compare-strings.js "Hello world" "Hi there"');
98 process.exit(1);
99 }
100
101 const string1 = args[0];
102 const string2 = args[1];
103
104 console.log(`\nComparing strings:`);
105 console.log(`String 1: "${string1}"`);
106 console.log(`String 2: "${string2}"\n`);
107
108 try {
109 const similarity = await compareStrings(string1, string2);
110 console.log(
111 `\nSimilarity score: ${similarity.toFixed(4)} (${(similarity * 100).toFixed(2)}%)`,
112 );
113 } catch (error) {
114 console.error(`Error: ${error.message}`);
115 process.exit(1);
116 }
117}
118
119main();

Mon, Feb 9, 5:34 AM · Language and Product Localization, Machine-Learning-Team
santhosh created P88721 nodejs client for the liftwing LaBSE embeddings.
Mon, Feb 9, 5:28 AM · CXServer, Lift-Wing

Fri, Feb 6

santhosh created T416659: Host sentence-transformers/LaBSE model in LiftWing.
Fri, Feb 6, 7:00 AM · Language and Product Localization, Machine-Learning-Team

Thu, Feb 5

santhosh created P88699 Winter Olympics 2026 - generated by Editor skill.
Thu, Feb 5, 8:49 AM

Tue, Jan 27

santhosh added a comment to T415621: Explore retraining add-a-link machine learning model using only higher-quality articles.

The current link suggestion system has an algorithmic issue that I had pointed in 2025. In this document and in a slack conversation(private), I explain this in detail. Basically, I argue that the problem is not a machine learning problem but a distributional fitting problem.

Tue, Jan 27, 4:44 AM · Growth-Team, Machine-Learning-Team, Add-Link-Structured-Task

Nov 18 2025

santhosh created T410351: Sentence pair highlighting no longer works.
Nov 18 2025, 4:40 AM · ContentTranslation

Nov 17 2025

santhosh added a comment to T410211: Specific .stl 3D model displayed incorrectly.

It looks like issue is specific to that file?
I tried https://commons.wikimedia.org/wiki/File:Moon_elevation.stl#/media/File:Moon_elevation.stl and working as expected

Nov 17 2025, 5:14 AM · Reader Growth Team, 3D

Nov 13 2025

santhosh created T410012: Exploration of HTML sentence segmentation without DOM change.
Nov 13 2025, 9:52 AM · CXServer
santhosh added a comment to T409222: Generate Section Translation (SX) URLs for community-specific vital articles for WE 2.1.5.

slightly unrelated to this ticket - the sections suggested for translation from this example is incorrect for many titles due to issues in current section alignment algorithm. For example: Etymology is asked to translate, but it is already there in the target article.

Nov 13 2025, 7:20 AM · LPL Projects (Surface content gaps contribution opportunities to engage native speakers in small wikis - FY26 WE 2.1.5), OKR-Work, LPL Onboarding and Development

Nov 10 2025

santhosh created T409711: Unified CX Metrics dashboard is missing data and graphs.
Nov 10 2025, 11:10 AM · Product-Analytics, LPL Analytics, ContentTranslation
santhosh triaged T409688: Upgrade sentencex library as Medium priority.
Nov 10 2025, 8:56 AM · LPL Projects (Other), LPL Essential (FY2025-26 Q2), CXServer
santhosh claimed T409688: Upgrade sentencex library.
Nov 10 2025, 8:56 AM · LPL Projects (Other), LPL Essential (FY2025-26 Q2), CXServer
santhosh created T409688: Upgrade sentencex library.
Nov 10 2025, 8:55 AM · LPL Projects (Other), LPL Essential (FY2025-26 Q2), CXServer

Oct 27 2025

santhosh added a comment to T407934: MT Usage tab in Content Translation Unified Metrics Dashboard is empty.

The graphs are still empty. Is there anything else to fix or will it take time to refresh the data?

Oct 27 2025, 4:49 AM · LPL Analytics, Product-Analytics (Kanban), ContentTranslation

Oct 23 2025

santhosh added a comment to T303085: Consider disabling Yandex as a translation provider for cxserver's machine translation functionality.

Yandex was removed from cxserver

Oct 23 2025, 4:32 AM · CXServer, SecTeam-Processed, Security, Security-Team

Oct 22 2025

santhosh added a comment to T406694: Add custom font on Amazigh projects (zghwiki, shiwiki, zghwiktionary).

The custom font embedding feature(also known as webfonts - https://www.mediawiki.org/wiki/Universal_Language_Selector/WebFonts ) was part of Universal Language Selector project. This was introduced more than a decade ago to support scripts when operating systems did not ship any fonts for them. The situation improved a lot in past several years. Embedding fonts in wikipedia pages has performance and network cost. So we gradually removed fonts as they got widely available. At present, in 2025, this feature is no longer recommended. It is also not actively maintained. There are a few fonts still in Universal Language Selector, but they are not embedded in wiki pages by default. Users can choose them from settings. But even then it is only available for Desktop and not for mobile. The Universal Language Selector is also undergoing a full rewrite this year as part of modernization.

Oct 22 2025, 6:21 AM · UniversalLanguageSelector
santhosh renamed T407934: MT Usage tab in Content Translation Unified Metrics Dashboard is empty from MT Usage tab in Content Translation Unified Metrics Dashboard Content Translation Unified Metrics Dashboard is empty to MT Usage tab in Content Translation Unified Metrics Dashboard is empty.
Oct 22 2025, 4:02 AM · LPL Analytics, Product-Analytics (Kanban), ContentTranslation
santhosh assigned T407934: MT Usage tab in Content Translation Unified Metrics Dashboard is empty to KCVelaga_WMF.
Oct 22 2025, 4:02 AM · LPL Analytics, Product-Analytics (Kanban), ContentTranslation
santhosh created T407934: MT Usage tab in Content Translation Unified Metrics Dashboard is empty.
Oct 22 2025, 4:01 AM · LPL Analytics, Product-Analytics (Kanban), ContentTranslation

Oct 7 2025

santhosh added a comment to T405359: Semantic Search POC - In article QA.

The LLM evaluation could be a little bit systematic. Currently GPS-OSS is 20B param mode, which we are comparing with Aya Expanse 32B. And Aya Expanse is an older model too. The prompt need to be versioned to see which is better. I would focus on figuring out a prompt and LLM param range that gives reasonable score and keep the LLM choice flexible since LLMs are are moving target and there are many practical considering to pick one.

Oct 7 2025, 9:05 AM · Semantic Search, Machine-Learning-Team

Oct 6 2025

santhosh changed the status of T395012: Host an OpenVINO model in LiftWing from Open to Stalled.

Marking as stalled for now.

Oct 6 2025, 6:43 AM · Lift-Wing, Machine-Learning-Team
santhosh added a comment to T395012: Host an OpenVINO model in LiftWing.

I am abandoning the patches as they are outdated and I do not plan to keep them updated with the changes mentioned above.

Oct 6 2025, 6:42 AM · Lift-Wing, Machine-Learning-Team
santhosh added a comment to T351748: Use community-provided translations when there is an exact match.

This proposal is intended to support corrections for exact sentences.
...
if a user fixes a typo in one specific sentence, it gets fixed only for that instance (even if similar sentences exist).

Oct 6 2025, 5:24 AM · MinT

Sep 25 2025

santhosh closed T405319: toolforge buildservice based tool is not starting as Resolved.
Sep 25 2025, 4:22 AM · cloud-services-team, Toolforge
santhosh added a comment to T405319: toolforge buildservice based tool is not starting.

Thanks. It works now. Tool is up https://api-explorer.toolforge.org/

Sep 25 2025, 4:22 AM · cloud-services-team, Toolforge

Sep 24 2025

santhosh added a comment to T351748: Use community-provided translations when there is an exact match.

Notes:

  • Does not work with words in sentences since it require “fitting” that selection of word in to the original sentence and keep grammar accurate.(in localization we call this “avoiding lego messages”.) -This limitation also applies to translation memory for phrases(incomplete sentences). Chances of encountering the (exactly) same sentence again less in general prose.
  • Examples
    • This is Basil(person) - ഇവൻ(male)/ഇവൾ(female) ബേസിലാണ് (the translation of basil get fused with affirmative ആണ് - aka agglutination. Same below)
    • This is basil(herb) - ഇത് തുളസിയാണ് (grammatical gender does not apply for things)
  • Grammatical gender, subject verb agreement, agglutination and inflection are quite common outside the realm of analytical languages
  • Word context issue is almost a solved problem in latest translation models, only present in MinT due to its limitation about contexts and anaphora resolution.(Broad context translation with self attention - in literature examples like “interest”, “bank” are often used)
Sep 24 2025, 5:22 AM · MinT

Sep 23 2025

santhosh added a comment to T405319: toolforge buildservice based tool is not starting.

If I dont use buildservice but copy the rust binary to toolforge product and run it with the following service template, service is starting successfullly

Sep 23 2025, 8:49 AM · cloud-services-team, Toolforge
santhosh renamed T405319: toolforge buildservice based tool is not starting from toolforge tool is not starting to toolforge buildservice based tool is not starting.
Sep 23 2025, 6:37 AM · cloud-services-team, Toolforge
santhosh edited projects for T405319: toolforge buildservice based tool is not starting, added: Toolforge, cloud-services-team; removed Cloud-Services.
Sep 23 2025, 6:02 AM · cloud-services-team, Toolforge
santhosh created T405319: toolforge buildservice based tool is not starting.

The Cloud-Services project tag is not intended to have any tasks. Please check the list on https://phabricator.wikimedia.org/project/profile/832/ and replace it with a more specific project tag to this task. Thanks!

Sep 23 2025, 6:01 AM · cloud-services-team, Toolforge

Sep 22 2025

santhosh added a comment to T404181: When templatedata is missing cxserver fails to extract template params from template source code.

Infobox historic site (https://www.wikidata.org/wiki/Q12857484) has templatedata in English, but no templatedata in Tamil. So cxserver has to extract template params from the template source code.

Sep 22 2025, 4:49 AM · LPL Projects (Other), Unplanned-Sprint-Work, LPL Essential (2025 Jul-Oct), CXServer

Sep 15 2025

santhosh claimed T404298: Can't translate en:Tokyo in Gujarati.
Sep 15 2025, 7:59 AM · LPL Projects (Other), Unplanned-Sprint-Work, LPL Essential (2025 Jul-Oct), CXServer, ContentTranslation

Sep 11 2025

santhosh created T404295: Cxserver API docs for v2/page/sourcelang/targetlang/title/revision has invalid revision example.
Sep 11 2025, 7:55 AM · CXServer

Sep 10 2025

santhosh created T404183: Explore and evaluate template parameter alignment based on language agnostic embedding similarity.
Sep 10 2025, 11:18 AM · CXServer
santhosh triaged T404181: When templatedata is missing cxserver fails to extract template params from template source code as High priority.
Sep 10 2025, 10:46 AM · LPL Projects (Other), Unplanned-Sprint-Work, LPL Essential (2025 Jul-Oct), CXServer
santhosh changed the status of T404181: When templatedata is missing cxserver fails to extract template params from template source code from Open to In Progress.
Sep 10 2025, 10:46 AM · LPL Projects (Other), Unplanned-Sprint-Work, LPL Essential (2025 Jul-Oct), CXServer
santhosh added a project to T404181: When templatedata is missing cxserver fails to extract template params from template source code: LPL Essential (2025 Jul-Oct).
Sep 10 2025, 10:45 AM · LPL Projects (Other), Unplanned-Sprint-Work, LPL Essential (2025 Jul-Oct), CXServer
santhosh claimed T404181: When templatedata is missing cxserver fails to extract template params from template source code.
Sep 10 2025, 10:45 AM · LPL Projects (Other), Unplanned-Sprint-Work, LPL Essential (2025 Jul-Oct), CXServer
santhosh created T404181: When templatedata is missing cxserver fails to extract template params from template source code.
Sep 10 2025, 10:37 AM · LPL Projects (Other), Unplanned-Sprint-Work, LPL Essential (2025 Jul-Oct), CXServer
santhosh closed T225847: [minor] Multi-word links display underscores in the link inspector, a subtask of T226645: Link inspector shows duplicate underscored title as first option, as Resolved.
Sep 10 2025, 4:21 AM · Editing QA, MW-1.34-notes (1.34.0-wmf.13; 2019-07-09), VisualEditor (Current work), Regression
santhosh closed T225847: [minor] Multi-word links display underscores in the link inspector as Resolved.
Sep 10 2025, 4:21 AM · ContentTranslation

Sep 9 2025

santhosh created T404056: Javascript error when translating empty paragraph - Can't access property "shallowCloneFromRange", node.getDocument() is null.
Sep 9 2025, 10:18 AM · ContentTranslation
santhosh added a comment to T404055: Infoboxes present in source articles disappear in CX.

Another example. Here the infobox is not completely missing. It is shown as an indicator in source column.

Sep 9 2025, 10:03 AM · ContentTranslation
santhosh created T404055: Infoboxes present in source articles disappear in CX.
Sep 9 2025, 9:57 AM · ContentTranslation
santhosh added a comment to T395012: Host an OpenVINO model in LiftWing.

Since LiftWing hosting plan is pending and under consideration by Machine-Learning-Team , I setup https://ovms.wmcloud.org/ with upstream docker image and above shellscript. Wrote an nginx proxy configuration for landing page, API key authentication and /api/v1 mounting. OpenAI api compatible APIs are available. This instance uses 8 CPU cores, 32GB RAM, 20GB Disk(models are in scratch volume). This wmcloud instance does not cancel this ticket, and for experimentation purpose.

Sep 9 2025, 6:57 AM · Lift-Wing, Machine-Learning-Team
santhosh added a comment to T395012: Host an OpenVINO model in LiftWing.

This patch to prepare a WMF production image is outdated again as new version of Debian is released.

Sep 9 2025, 6:48 AM · Lift-Wing, Machine-Learning-Team
santhosh added a comment to T395012: Host an OpenVINO model in LiftWing.

The model repository setup is easy with the new versions. OVMS can pull models from huggingface repos and setup all configurations. I wrote a shellscript to get all listed models in it and start the server. This script is used with the official docker images of OVMS. https://gerrit.wikimedia.org/r/c/machinelearning/liftwing/inference-services/+/1151645 will require updates based on this

Sep 9 2025, 6:47 AM · Lift-Wing, Machine-Learning-Team

Sep 3 2025

santhosh added a comment to T394982: Migrate cxserver in production to node22.

Node 22 stabilizes the fetch API. It is now feature compatible with browsers fetch API. This is generally good, but it also adds more restrictions to what a valid http request can be.  The header field we are setting to pass the wikipedia domain to that wiki proxy is HOST (see the configuration). This is problematic because HOST is a forbidden header.

Sep 3 2025, 5:42 AM · CXServer, LPL Projects (Other), LPL Essential (2025 Jul-Oct)

Aug 28 2025

santhosh edited projects for T403146: Explore and evaluate Section suggestions based on language agnostic embedding similarity, added: ContentTranslation; removed SectionTranslation.
Aug 28 2025, 5:39 AM · ContentTranslation
santhosh created T403146: Explore and evaluate Section suggestions based on language agnostic embedding similarity.
Aug 28 2025, 5:38 AM · ContentTranslation
santhosh created T403145: False positives in Section Alignment pipeline .
Aug 28 2025, 5:07 AM · GrowthExperiments-NewcomerTasks, Image-Suggestions, Research, Growth-Team, Growth-Structured-Tasks

Jul 28 2025

santhosh added a comment to T399124: Show section suggestions before article suggestions in dashboard.

Just pointing out an additional detail on 'easy to translate':

Jul 28 2025, 5:24 AM · MW-1.45-notes (1.45.0-wmf.12; 2025-07-29), LPL Projects (Translation suggestions for New Editors – FY26 WE 2.1.2), ContentTranslation, OKR-Work, LPL Hypothesis

Jul 24 2025

santhosh added a comment to T391131: Enable GrowthExperiments on selected small wikis (FY 25/26 WE2.1).

For example, the "Add a Link" model needs to be trained on links that already exist within articles on a wiki, so there is a Machine Learning dependency and a chance that some wikis will be too small for the model to be properly trained.

Jul 24 2025, 4:21 AM · Growth-Scaling, LPL Projects (Engage native speakers to improve vital content in small language Wikipedias – FY26 WE 2.1.1), GrowthExperiments, Growth-Team, OKR-Work, LPL Onboarding and Development

Jul 1 2025

santhosh added a comment to T395012: Host an OpenVINO model in LiftWing.

Update: New version of Opevino and Openvino model server was released a few days ago. I updated my production bookworm based docker image patch: https://gerrit.wikimedia.org/r/c/operations/docker-images/production-images/+/1153988 to that version. This new version adds support for agentic AI(tool calling and MCP).

Jul 1 2025, 9:42 AM · Lift-Wing, Machine-Learning-Team

Jun 24 2025

santhosh added a comment to T393705: Remove CXStats related code.

@Wangombe , I reviewed it and proposed some changes

Jun 24 2025, 4:54 AM · MW-1.45-notes (1.45.0-wmf.9; 2025-07-08), LPL Essential (LPL Essential 2025 Apr-Jun: CX), ContentTranslation

Jun 10 2025

santhosh added a comment to T376531: Translated paragraphs disappear in the Content Translation Tool.

I found one genuine reason why the progress value can be different. Suppose there are 10 source sections and you translate 5. The any value would be 0.5, If you modified all the sections, the mt value would be 0(just assume so) and human value would 1. When you come back a few days later, the source article can have 11 sections. Then any calculated at the time of restoration would be 0.45(5/11) . Have a look at the case #2 in the above comment. It is an example of this scenario.

Jun 10 2025, 7:11 AM · MW-1.45-notes (1.45.0-wmf.21; 2025-09-30), LPL Projects (Other), LPL Essential (2025 Jul-Oct), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), ContentTranslation
santhosh added a comment to T393306: Chart output makes VE support difficult.

Note that the is attribute based custom elements are not widely supported: https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Global_attributes/is

Jun 10 2025, 4:05 AM · Editing-team (Tracking), VisualEditor, Content-Transform-Team, Patch-For-Review, Charts

Jun 9 2025

santhosh added a comment to T376531: Translated paragraphs disappear in the Content Translation Tool.

Some observations from initial attempt to debug:

Jun 9 2025, 10:27 AM · MW-1.45-notes (1.45.0-wmf.21; 2025-09-30), LPL Projects (Other), LPL Essential (2025 Jul-Oct), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), ContentTranslation

Jun 6 2025

santhosh added a comment to T395012: Host an OpenVINO model in LiftWing.

Here is the screencast of everything working together: https://drive.google.com/file/d/1YDSvTm3ePv585-ittck2tYWH2XZ-AHLx/view
(MP4 video, 15mins, 88MB)

Jun 6 2025, 5:25 AM · Lift-Wing, Machine-Learning-Team

Jun 5 2025

santhosh added a comment to T395012: Host an OpenVINO model in LiftWing.

Updates: I successfully created a production docker image on top of WMF production wookworm image.

Jun 5 2025, 11:19 AM · Lift-Wing, Machine-Learning-Team

Jun 4 2025

santhosh added a comment to T395012: Host an OpenVINO model in LiftWing.

I am trying to build a production docker image with WMF debian bookworm+python3.11+openvino 2025.1.0+ OVMS 2025.1.0. I am referring the Ubuntu Dockerfile.

Jun 4 2025, 10:59 AM · Lift-Wing, Machine-Learning-Team

Jun 3 2025

santhosh updated subscribers of T395012: Host an OpenVINO model in LiftWing.
Jun 3 2025, 11:08 AM · Lift-Wing, Machine-Learning-Team
santhosh added a comment to T395012: Host an OpenVINO model in LiftWing.

Thanks @kevinbazira and @isarantopoulos for these details. Very useful information.

Jun 3 2025, 7:24 AM · Lift-Wing, Machine-Learning-Team

May 29 2025

santhosh added a comment to T395012: Host an OpenVINO model in LiftWing.

Regarding the KServe API and Openvino model server:

May 29 2025, 11:04 AM · Lift-Wing, Machine-Learning-Team
santhosh added a comment to T395012: Host an OpenVINO model in LiftWing.

I tried to integrate Openvino model server to liftwing. Learnings for the first iteration(see the above WIP patch):

May 29 2025, 6:45 AM · Lift-Wing, Machine-Learning-Team

May 28 2025

santhosh added a comment to T395307: Surface recently selected filters.

This is a good idea.
I would suggest to use a simple client side memory for the recent selections - like localstorage and avoid server side storage(which require database, and big effort and resulting maintanance cost and tech debt).
I think it is acceptable to not have the recent selections when user switch browsers/computers.

May 28 2025, 10:32 AM · ContentTranslation, Design

May 22 2025

santhosh updated subscribers of T395012: Host an OpenVINO model in LiftWing.
May 22 2025, 10:59 AM · Lift-Wing, Machine-Learning-Team
santhosh created T395012: Host an OpenVINO model in LiftWing.
May 22 2025, 10:52 AM · Lift-Wing, Machine-Learning-Team

May 8 2025

santhosh added a comment to T392887: Request to Add Machine Translation Support for Karakalpak Language in Content Translation.

We do have a machine translation system for kaa - Karakalpak powered by MADLAD-400 model.

May 8 2025, 8:19 AM · MinT
santhosh added a comment to T393306: Chart output makes VE support difficult.

The benefits of webcomponents compared to html tags is well documented. Webcomponents are html stanadard and supported by all browsers. Ofcourse, you can achieve the same features with html tags and javascript - with trade-offs. I would like to see them supported in mediawiki as they are part of web standard.

May 8 2025, 5:47 AM · Editing-team (Tracking), VisualEditor, Content-Transform-Team, Patch-For-Review, Charts

May 6 2025

santhosh updated the task description for T380079: This page is using the deprecated ResourceLoader module "mediawiki.Uri" on page load.
May 6 2025, 4:08 AM · MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), MW-1.44-release, Fundraising-Backlog, Patch-For-Review, MediaWiki-extensions-CentralNotice, ContentTranslation

May 5 2025

santhosh moved T390074: Review new VisualEditor hooks and update ContentTranslation as needed from Ready for dev to Pending Deployment on the LPL Essential (LPL Essential 2025 Apr-Jun: CX) board.

I used this documentation https://www.mediawiki.org/wiki/VisualEditor/Hooks for code search

May 5 2025, 8:29 AM · LPL Essential (LPL Essential 2025 Apr-Jun: CX), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), ContentTranslation

Apr 30 2025

santhosh edited projects for T390241: [Request] mediawiki.Uri is deprecated, use URL instead in ContentTranslation, added: LPL Essential (LPL Essential 2025 Apr-Jun: CX); removed Language-Technical Support (Language-Technical Support (Current)).
Apr 30 2025, 6:08 AM · LPL Essential (LPL Essential 2025 Apr-Jun: CX), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), MW-1.44-release, ContentTranslation
santhosh moved T392872: Remove contribution menu entrypoint from Vector(old) skin and support only Vector-2022 skin. from Backlog to In Progress on the LPL Essential (LPL Essential 2025 Apr-Jun: CX) board.
Apr 30 2025, 4:05 AM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Vector (legacy skin) (Tracking), LPL Essential (LPL Essential 2025 Apr-Jun: CX), ContentTranslation
santhosh triaged T392872: Remove contribution menu entrypoint from Vector(old) skin and support only Vector-2022 skin. as Medium priority.
Apr 30 2025, 4:05 AM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Vector (legacy skin) (Tracking), LPL Essential (LPL Essential 2025 Apr-Jun: CX), ContentTranslation

Apr 29 2025

santhosh added a comment to T385894: MT thresholds hardcoded in section translation.

The 45% thresholds are extreme case. It means you cannot publish a translation that has >45% machine translation. This demands heavy editing from translator. We also don't tell the translator about these percentages(T251887).
In my opinition, a simpler, consistant and predictable threshold level is better. If T is threshold for errors, make T-10 as the warning threshold, irrespective of value of T.

Apr 29 2025, 11:26 AM · ContentTranslation, MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), LPL Essential (LPL Essential 2025 Apr-Jun: CX)
santhosh created T392872: Remove contribution menu entrypoint from Vector(old) skin and support only Vector-2022 skin..
Apr 29 2025, 5:58 AM · MW-1.45-notes (1.45.0-wmf.2; 2025-05-20), Vector (legacy skin) (Tracking), LPL Essential (LPL Essential 2025 Apr-Jun: CX), ContentTranslation
santhosh claimed T390074: Review new VisualEditor hooks and update ContentTranslation as needed.
Apr 29 2025, 5:15 AM · LPL Essential (LPL Essential 2025 Apr-Jun: CX), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), ContentTranslation

Apr 28 2025

santhosh changed the status of T390241: [Request] mediawiki.Uri is deprecated, use URL instead in ContentTranslation, a subtask of T380079: This page is using the deprecated ResourceLoader module "mediawiki.Uri" on page load, from Open to In Progress.
Apr 28 2025, 9:22 AM · MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), MW-1.44-release, Fundraising-Backlog, Patch-For-Review, MediaWiki-extensions-CentralNotice, ContentTranslation
santhosh changed the status of T390241: [Request] mediawiki.Uri is deprecated, use URL instead in ContentTranslation from Open to In Progress.
Apr 28 2025, 9:22 AM · LPL Essential (LPL Essential 2025 Apr-Jun: CX), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), MW-1.44-release, ContentTranslation
santhosh added a project to T390241: [Request] mediawiki.Uri is deprecated, use URL instead in ContentTranslation: Language-Technical Support (Language-Technical Support (Current)).
Apr 28 2025, 9:22 AM · LPL Essential (LPL Essential 2025 Apr-Jun: CX), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), MW-1.44-release, ContentTranslation
santhosh moved T390241: [Request] mediawiki.Uri is deprecated, use URL instead in ContentTranslation from Needs Triage to Upstream/Other teams on the ContentTranslation board.
Apr 28 2025, 9:21 AM · LPL Essential (LPL Essential 2025 Apr-Jun: CX), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), MW-1.44-release, ContentTranslation
santhosh triaged T390241: [Request] mediawiki.Uri is deprecated, use URL instead in ContentTranslation as Medium priority.
Apr 28 2025, 9:21 AM · LPL Essential (LPL Essential 2025 Apr-Jun: CX), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), MW-1.44-release, ContentTranslation
santhosh claimed T390241: [Request] mediawiki.Uri is deprecated, use URL instead in ContentTranslation.
Apr 28 2025, 7:20 AM · LPL Essential (LPL Essential 2025 Apr-Jun: CX), MW-1.44-notes (1.44.0-wmf.28; 2025-05-06), MW-1.44-release, ContentTranslation
santhosh raised the priority of T389752: Add campaign param to the ContentTranslation redirect from Special:AboutTopic to measure resulting translations from Medium to Needs Triage.

Please use same campaign parameter. The ArticlePlaceholder patch passes articleplaceholder as campaign param. CX Config and event source config should use the same. article_placeholder does not match.

Apr 28 2025, 5:06 AM · LPL Hypothesis, MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), ContentTranslation, ArticlePlaceholder

Apr 7 2025

santhosh added a comment to T388705: Add dynamic configuration to cxserver.

Following discussions with the team, we've concluded that dynamic configuration is not a use case currently supported by Wikimedia. Our configurations are static, managed through updates and deployments. The
conf.yaml file facilitates this by allowing for varied configurations across different deployments, as it's separate from the codebase.

Apr 7 2025, 5:41 AM · CXServer

Mar 25 2025

santhosh created T389912: Cannot restart a saved section translation in mobile.
Mar 25 2025, 5:01 AM · LPL Hypothesis, ContentTranslation

Mar 24 2025

santhosh updated the task description for T389752: Add campaign param to the ContentTranslation redirect from Special:AboutTopic to measure resulting translations.
Mar 24 2025, 5:01 AM · LPL Hypothesis, MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), ContentTranslation, ArticlePlaceholder
santhosh created T389752: Add campaign param to the ContentTranslation redirect from Special:AboutTopic to measure resulting translations.
Mar 24 2025, 5:00 AM · LPL Hypothesis, MW-1.45-notes (1.45.0-wmf.1; 2025-05-13), ContentTranslation, ArticlePlaceholder

Mar 20 2025

santhosh added a comment to T306508: ContentTranslation doesn't know that an article already exists in the Norwegian Bokmål Wikipedia.

. It let me start translating, and only when I went to publish did it warn me that I would be overwriting an existing article. This seems like a step back from the behaviour of the old dashboard, where at least it would warn me before I started translating.

Mar 20 2025, 6:02 AM · LPL Hypothesis, MW-1.40-notes (1.40.0-wmf.10; 2022-11-14), Language-Team (Language-2022-October-December), ContentTranslation

Mar 19 2025

santhosh added a comment to T306508: ContentTranslation doesn't know that an article already exists in the Norwegian Bokmål Wikipedia.

@jhsoby I was testing this again, and I don't see the issue now.
More importantly, the CX dashboard's new version is coming up. It will replace the current dashboard.
The following URL can be used to access new dashboard.
You can access it in https://no.wikipedia.org/w/index.php?title=Special:ContentTranslation&unified-dashboard=1&filter-type=automatic&filter-id=previous-edits&active-list=draft&from=en&to=nb#/

Mar 19 2025, 7:01 AM · LPL Hypothesis, MW-1.40-notes (1.40.0-wmf.10; 2022-11-14), Language-Team (Language-2022-October-December), ContentTranslation
santhosh added a comment to T389168: mostviewed api failure: pvi-cached-error: An earlier attempt to fetch this data failed. To limit server load, retries have been blocked for 30 minutes.

Seems working now. The blocking of retries for 30 mins for all consumers of API seems not an optimal approach. Also see T382376: PageViewInfo caches errors due to the request limit which can lead to denial of service

Mar 19 2025, 6:21 AM · PageViewInfo, Recommendation-API, Wikimedia-production-error

Mar 18 2025

santhosh created T389168: mostviewed api failure: pvi-cached-error: An earlier attempt to fetch this data failed. To limit server load, retries have been blocked for 30 minutes.
Mar 18 2025, 7:31 AM · PageViewInfo, Recommendation-API, Wikimedia-production-error

Mar 17 2025

santhosh added a comment to T388701: Adding DeepL Machine Translator provider to cxserver.

Thanks for that context. For the reasons I explained above, my advice would be to have DeepL client in your customized version and not in the upstream. Currently, our team or organization does not have a collaboration with DeepL. If this situation changes, we will definitely consider your client code. Thanks!

Mar 17 2025, 6:44 AM · CXServer

Mar 13 2025

santhosh created P74217 Page Collections indexing - Rust version.
Mar 13 2025, 8:05 AM · Recommendation-API
santhosh added a comment to T388701: Adding DeepL Machine Translator provider to cxserver.

Hi, DeepL is a proprietary machine translation service and their API key has a price associated with - at least to use in the scale of current traffic of cxserver. For such external Machine translation services, we(WMF) usualy has a partnership. For example, to use Google API, WMF and Google has partnership agreement. For DeepL too, we will need such agreement(legal, branding, pricing).

Mar 13 2025, 4:29 AM · CXServer

Mar 11 2025

santhosh added a comment to T387820: Deploy unified dashboard on 10 more wikis (phase 2).

Hello is it possible this ticket relates to the train blocker at T388467: TypeError: mtSuggestions.map is not a function ?

Mar 11 2025, 4:10 AM · SectionTranslation, LPL Hypothesis

Mar 6 2025

santhosh changed the visibility for F58617540: image.png.
Mar 6 2025, 8:29 AM