⚓ T396142 ContentTranslation tool doesn't follow wgContentTranslationPublishRequirements setting
Page Menu
Phabricator
Create Task
Maniphest
T396142
ContentTranslation tool doesn't follow wgContentTranslationPublishRequirements setting
Closed, Resolved
Public
4 Estimated Story Points
BUG REPORT
Actions
Edit Task
Edit Related Tasks...
Create Subtask
Edit Parent Tasks
Edit Subtasks
Merge Duplicates In
Close As Duplicate
Edit Related Objects...
Edit Commits
Edit Mocks
Mute Notifications
Protect as security issue
Assigned To
SBisson
Authored By
Zache
Jun 5 2025, 5:11 PM
2025-06-05 17:11:37 (UTC+0)
Tags
ContentTranslation
(Drafts and publishing)
LPL Hypothesis
(Product Signoff)
LPL Projects (Other)
MW-1.45-notes (1.45.0-wmf.11; 2025-07-22)
Referenced Files
F65990649: iPhone SE - 9.png
Sep 9 2025, 6:44 AM
2025-09-09 06:44:20 (UTC+0)
F65804335: 2025-08-20_13-10-09.mp4.gif
Aug 20 2025, 8:16 PM
2025-08-20 20:16:07 (UTC+0)
F65804003: 2025-08-20_12-11-40.png
Aug 20 2025, 8:16 PM
2025-08-20 20:16:07 (UTC+0)
F65804035: 2025-08-20_12-13-24.png
Aug 20 2025, 8:16 PM
2025-08-20 20:16:07 (UTC+0)
F65803682: 2025-08-20_11-29-24.mp4
Aug 20 2025, 8:16 PM
2025-08-20 20:16:07 (UTC+0)
F65694943: 2025-07-30_16-57-51.mp4
Aug 20 2025, 8:16 PM
2025-08-20 20:16:07 (UTC+0)
F65694940: Mobile_PublishingWarning.webm
Aug 20 2025, 8:16 PM
2025-08-20 20:16:07 (UTC+0)
F62378534: iPhone SE - 5.png
Jun 18 2025, 3:56 PM
2025-06-18 15:56:49 (UTC+0)
View All 11 Files
Subscribers
Aklapper
GMikesell-WMF
Kyykaarme
Nikerabbit
Samoasambia
SBisson
SGautam_WMF
Zache
Description
The variable
wgContentTranslationPublishRequirements
should define the user rights which users would have permission to save the translated articles directly to main namespace (i.e., in Wikipedia to article namespace). Setting is defined in
InitialiseSettings.php
For example, in Finnish Wikipedia we added the requirement for autoreview on Jun 8, 2023 (see phab
T337412
). However, there are still continuous hits in the
abusefilter log
from new users who are trying to save pages to article namespace. We
noticed
this as there were also translations from mobile users without the autoreview right which didn't match the abusefilter rule and were saved to article namespace. (see
quarry 94346
) Similarly, in English Wikipedia there are hits to
abusefilter
Design Details
Stage 1: Initial Warning (Translation Start)
When users begin a translation, they will see a warning banner that:
Component:
Codex Message component (cdx-message)
Placement:
Appears at the top of the translation interface (below the header)
Visual specifications:
Icon:
cdxIconError
Icon color:
color.red500 (#f54739)
Border:
color.red500 (#f54739)
Text color:
#202122
Link color:
#3366cc
Message text:
"This community decided to limit publishing to experienced editors"
Interactive elements:
"Learn more"
(blue link #3366cc) - Provides detailed information about requirements
Close button (X)
- Allows dismissal of the banner
Behavior:
Non-blocking - users can continue translating after dismissing
Appears once per translation session
Sets expectation early before users invest significant effort
Purpose:
Proactive communication to prevent surprise at publishing time
Stage 2: Publishing Error (At Publish Attempt)
When restricted users attempt to publish:
We utilize the existing review and error panel infrastructure (implemented in
T260134
This publishing restriction error takes precedence over all other error messages
Shown as the first error (1/3) when multiple issues exist
Users must acknowledge this restriction before seeing any other validation errors
Error message text:
"This community decided to limit the publication to experienced editors. You need more edits here first, but you can save as draft or try another language."
UI State:
The publish button (✓) is disabled/grayed out
Cannot proceed to publish until user has required permissions
Available actions:
"Save as draft"
(blue link/button) - Actionable element that:
Automatically prefixes the article title with the username
Publishing to user's personal namespace instead of main namespace
"Learn more"
(blue link) - Links to the wiki's Content Translation help page (e.g., [[Wikipedia:Content_translation_tool]] on English Wikipedia)
Acceptance Criteria
Stage 1: Initial Warning
Warning appears when user without permissions starts translation
Shows message: "This community decided to limit publishing to experienced editors"
"Learn more" link works and goes to wiki's help page
X button dismisses the banner
User can continue translating after dismissing
Banner doesn't reappear in same session
Stage 2: Publishing Error
Error appears when restricted user tries to publish
Publish button is disabled
Shows as first error if multiple errors exist
Shows full message with options
"Save as draft" successfully includes username prefix
"Learn more" link works
User cannot bypass to publish without permissions
Derived Requirements
Ensure that when a user without the required
wgContentTranslationPublishRequirements
permissions starts a translation, a warning banner is shown at the top of the translation interface with the defined message and interactive elements.
Ensure that the warning banner is dismissible, non-blocking, and only appears once per translation session.
Ensure that when a restricted user attempts to publish a translation, the system shows an error message that takes precedence over all other errors.
Ensure that the publish button is disabled for restricted users until they have the required permissions.
Ensure that the "Save as draft" option successfully prefixes the article title with the username and saves the translation in the user’s personal namespace.
Ensure that the "Learn more" links in both the warning banner and publishing error messages lead to the appropriate Content Translation help page for the wiki.
Test Steps
Test Case 1: Ensure Warning Banner Appears for Restricted Users When Starting Translation
Log in with a user account that does not have the required permissions defined by
wgContentTranslationPublishRequirements
Start a new translation in the ContentTranslation tool.
✅❓❌⬜
AC1:
Verify that a warning banner appears at the top of the translation interface with the specified message, "Learn more" link, and dismiss button.
Test Case 2: Ensure Warning Banner Is Dismissible and Non-blocking
While the warning banner is visible, click the close (X) button.
Continue translating after dismissing.
✅❓❌⬜
AC2:
Verify that the banner is dismissed, does not block translation progress, and does not reappear in the same session.
Test Case 3: Ensure Publishing Error Appears for Restricted Users
Using the same restricted account, attempt to publish the translation.
✅❓❌⬜
AC3:
Verify that an error message appears as the first error, with the publish button disabled and the message text displayed correctly.
Test Case 4: Ensure "Save as Draft" Functionality Works
From the publishing error message, select "Save as draft".
✅❓❌⬜
AC4:
Verify that the translation is saved in the user’s personal namespace with the article title prefixed by the username.
Test Case 5: Ensure "Learn More" Links Work
Click the "Learn more" link in the initial warning banner.
Click the "Learn more" link in the publishing error message.
✅❓❌⬜
AC5:
Verify that both links direct to the correct Content Translation help page of the wiki.
Test Case 6: Ensure Restricted Users Cannot Publish Without Permissions
Attempt to bypass the publishing restriction by dismissing the error or retrying publish.
✅❓❌⬜
AC6:
Verify that the publish button remains disabled and the user cannot publish to the main namespace without the required permissions.
QA Results - TestWiki
AC
Status
Details
Pending
T396142#11106764
T396142#11104098
per
T396142#11106764
Pending
T396142#11106764
T396142#11104098
per
T396142#11106764
Details
Related Changes in Gerrit:
Subject
Repo
Branch
Lines +/-
CX3 Build 1.0.0+20250721
mediawiki/extensions/ContentTranslation
master
+4 K
-4 K
Inform editor of unmet publishing requirements
mediawiki/extensions/ContentTranslation
master
+177
-33
Enforce wgContentTranslationPublishRequirements in publish APIs
mediawiki/extensions/ContentTranslation
master
+378
-0
Customize query in gerrit
Related Objects
Mentions
Mentioned In
T369923: ContentTranslation (section mode) does not honor ContentTranslationPublishRequirements
T408727: CX Dashboard local customization not always shown
T223495: Add configuration to wikis with publish restrictions
T396258: Learn more button URL for the "Publishing only allowed to experienced users" message is hardcoded to an English Wikipedia page
Mentioned Here
T355079: Apply the simplified system of limits on mobile
T260134: Preview and publish: Communicate publishing issues
T337412: Restrict Content Translation tool to the autoreview group in fiwiki
Event Timeline
Zache
created this task.
Jun 5 2025, 5:11 PM
2025-06-05 17:11:37 (UTC+0)
Restricted Application
added a subscriber:
Aklapper
View Herald Transcript
Jun 5 2025, 5:11 PM
2025-06-05 17:11:38 (UTC+0)
Zache
updated the task description.
(Show Details)
Jun 5 2025, 5:14 PM
2025-06-05 17:14:45 (UTC+0)
Samoasambia
subscribed.
Jun 5 2025, 5:31 PM
2025-06-05 17:31:31 (UTC+0)
Zache
updated the task description.
(Show Details)
Jun 5 2025, 5:39 PM
2025-06-05 17:39:59 (UTC+0)
Zache
updated the task description.
(Show Details)
SBisson
triaged this task as
High
priority.
Jun 5 2025, 7:15 PM
2025-06-05 19:15:52 (UTC+0)
SBisson
moved this task from
Needs Triage
to
Drafts and publishing
on the
ContentTranslation
board.
Kyykaarme
subscribed.
Jun 6 2025, 7:02 AM
2025-06-06 07:02:52 (UTC+0)
Samoasambia
mentioned this in
T396258: Learn more button URL for the "Publishing only allowed to experienced users" message is hardcoded to an English Wikipedia page
Jun 6 2025, 9:07 PM
2025-06-06 21:07:41 (UTC+0)
SBisson
subscribed.
Jun 10 2025, 1:29 PM
2025-06-10 13:29:04 (UTC+0)
Comment Actions
This is the warning shown on the desktop editor:
SBisson
added a comment.
Jun 10 2025, 1:30 PM
2025-06-10 13:30:04 (UTC+0)
Comment Actions
This is how it is shown in the sidebar of the desktop editor:
SBisson
added a project:
LPL Hypothesis
Jun 10 2025, 1:39 PM
2025-06-10 13:39:29 (UTC+0)
PWaigi-WMF
moved this task from
Backlog
to
Prioritized
on the
LPL Hypothesis
board.
Jun 10 2025, 1:39 PM
2025-06-10 13:39:53 (UTC+0)
gerritbot
added a comment.
Jun 18 2025, 3:25 PM
2025-06-18 15:25:10 (UTC+0)
Comment Actions
Change #1160843 had a related patch set uploaded (by Sbisson; author: Sbisson):
[mediawiki/extensions/ContentTranslation@master] Enforce wgContentTranslationPublishRequirements in publish APIs
gerritbot
added a project:
Patch-For-Review
Jun 18 2025, 3:25 PM
2025-06-18 15:25:11 (UTC+0)
SGautam_WMF
updated the task description.
(Show Details)
Jun 18 2025, 3:43 PM
2025-06-18 15:43:11 (UTC+0)
SGautam_WMF
updated the task description.
(Show Details)
Jun 18 2025, 3:46 PM
2025-06-18 15:46:37 (UTC+0)
SGautam_WMF
updated the task description.
(Show Details)
Jun 18 2025, 3:56 PM
2025-06-18 15:56:49 (UTC+0)
SGautam_WMF
updated the task description.
(Show Details)
Jun 18 2025, 3:59 PM
2025-06-18 15:59:37 (UTC+0)
SBisson
claimed this task.
Jun 18 2025, 4:42 PM
2025-06-18 16:42:34 (UTC+0)
SBisson
moved this task from
Prioritized
to
In-progress
on the
LPL Hypothesis
board.
Nikerabbit
subscribed.
Jun 24 2025, 6:51 AM
2025-06-24 06:51:10 (UTC+0)
Comment Actions
See also
T355079: Apply the simplified system of limits on mobile
gerritbot
added a comment.
Jun 30 2025, 4:49 PM
2025-06-30 16:49:25 (UTC+0)
Comment Actions
Change #1160843
merged
by jenkins-bot:
[mediawiki/extensions/ContentTranslation@master] Enforce wgContentTranslationPublishRequirements in publish APIs
ReleaseTaggerBot
added a project:
MW-1.45-notes (1.45.0-wmf.8; 2025-07-01)
Jun 30 2025, 5:00 PM
2025-06-30 17:00:23 (UTC+0)
Maintenance_bot
removed a project:
Patch-For-Review
Jun 30 2025, 5:31 PM
2025-06-30 17:31:47 (UTC+0)
SBisson
mentioned this in
T223495: Add configuration to wikis with publish restrictions
Jul 8 2025, 6:32 PM
2025-07-08 18:32:13 (UTC+0)
gerritbot
added a comment.
Jul 11 2025, 1:34 PM
2025-07-11 13:34:58 (UTC+0)
Comment Actions
Change #1168180 had a related patch set uploaded (by Sbisson; author: Sbisson):
[mediawiki/extensions/ContentTranslation@master] Inform editor of unmet publishing requirements
gerritbot
added a project:
Patch-For-Review
Jul 11 2025, 1:34 PM
2025-07-11 13:34:59 (UTC+0)
SBisson
added a subscriber:
SGautam_WMF
Jul 15 2025, 6:39 PM
2025-07-15 18:39:13 (UTC+0)
Comment Actions
@SGautam_WMF
I don't see a good way to turn the "save as draft" part of the message into a button that changes the publishing target. Do you think we can live without considering the button to do that is actually the cog icon just above?
SBisson
moved this task from
In-progress
to
Needs Code Review
on the
LPL Hypothesis
board.
Jul 15 2025, 6:42 PM
2025-07-15 18:42:46 (UTC+0)
Nikerabbit
added a project:
LPL Projects (Other)
Jul 16 2025, 7:03 AM
2025-07-16 07:03:53 (UTC+0)
SBisson
added a comment.
Jul 17 2025, 6:53 PM
2025-07-17 18:53:02 (UTC+0)
Comment Actions
@SGautam_WMF
do you think the "initial warning" should actually be presented as a warning (yellow instead of red)?
gerritbot
added a comment.
Jul 18 2025, 9:21 AM
2025-07-18 09:21:48 (UTC+0)
Comment Actions
Change #1168180
merged
by jenkins-bot:
[mediawiki/extensions/ContentTranslation@master] Inform editor of unmet publishing requirements
Maintenance_bot
removed a project:
Patch-For-Review
Jul 18 2025, 9:31 AM
2025-07-18 09:31:52 (UTC+0)
ReleaseTaggerBot
edited projects, added
MW-1.45-notes (1.45.0-wmf.11; 2025-07-22)
; removed
MW-1.45-notes (1.45.0-wmf.8; 2025-07-01)
Jul 18 2025, 10:01 AM
2025-07-18 10:01:21 (UTC+0)
SBisson
moved this task from
Needs Code Review
to
Pending deployment
on the
LPL Hypothesis
board.
Jul 18 2025, 7:31 PM
2025-07-18 19:31:13 (UTC+0)
gerritbot
added a comment.
Jul 21 2025, 6:19 PM
2025-07-21 18:19:22 (UTC+0)
Comment Actions
Change #1171255 had a related patch set uploaded (by Sbisson; author: Sbisson):
[mediawiki/extensions/ContentTranslation@master] CX3 Build 1.0.0+20250721
gerritbot
added a project:
Patch-For-Review
Jul 21 2025, 6:19 PM
2025-07-21 18:19:24 (UTC+0)
gerritbot
added a comment.
Jul 21 2025, 8:31 PM
2025-07-21 20:31:03 (UTC+0)
Comment Actions
Change #1171255
merged
by jenkins-bot:
[mediawiki/extensions/ContentTranslation@master] CX3 Build 1.0.0+20250721
SBisson
moved this task from
Pending deployment
to
Needs QA
on the
LPL Hypothesis
board.
Jul 24 2025, 6:16 PM
2025-07-24 18:16:52 (UTC+0)
Maintenance_bot
removed a project:
Patch-For-Review
Jul 24 2025, 6:31 PM
2025-07-24 18:31:10 (UTC+0)
GMikesell-WMF
subscribed.
Edited
Aug 20 2025, 8:16 PM
2025-08-20 20:16:07 (UTC+0)
Comment Actions
@SBisson
Please review AC1, AC3, AC4 and AC6. If you have any questions, please let me know, thanks!
@SGautam_WMF
Pending: AC1 and AC4
T396142#11106764
Test Result - TestWiki
Status:
✅ PASS / ❓Need More Info
Environment:
TestWiki
OS:
macOS Sequoia 15.6
Browser:
Chrome 138
Device:
MBA
Emulated Device:
NA
Test Artifact(s):
Test Steps
Test Case 1: Ensure Warning Banner Appears for Restricted Users When Starting Translation
Log in with a user account that does not have the required permissions defined by
wgContentTranslationPublishRequirements
Start a new translation in the ContentTranslation tool.
AC1:
Verify that a warning banner appears at the top of the translation interface with the specified message, "Learn more" link, and dismiss button.
Warning banner is yellow vs red in the description
Test Case 2: Ensure Warning Banner Is Dismissible and Non-blocking
While the warning banner is visible, click the close (X) button.
Continue translating after dismissing.
AC2:
Verify that the banner is dismissed, does not block translation progress, and does not reappear in the same session.
Test Case 3: Ensure Publishing Error Appears for Restricted Users
Using the same restricted account, attempt to publish the translation.
AC3:
Verify that an error message appears as the first error, with the publish button disabled and the message text displayed correctly.
UPDATE: Pass per
T396142#11106764
As seen in the screenshot compared to the description picture, it has 3 more pages
Video
Description Screenshot
Actual Result Screenshot
Test Case 4: Ensure "Save as Draft" Functionality Works
From the publishing error message, select "Save as draft".
AC4:
Verify that the translation is saved in the user’s personal namespace with the article title prefixed by the username.
I did not come across an option for "Save as draft"
See AC3
Test Case 5: Ensure "Learn More" Links Work
Click the "Learn more" link in the initial warning banner.
Click the "Learn more" link in the publishing error message.
AC5:
Verify that both links direct to the correct Content Translation help page of the wiki.
Test Case 6: Ensure Restricted Users Cannot Publish Without Permissions
Attempt to bypass the publishing restriction by dismissing the error or retrying publish.
AC6:
Verify that the publish button remains disabled and the user cannot publish to the main namespace without the required permissions.
UPDATE: Pass per
T396142#11106764
The only way to bypass this and publish is by switching the option to "Publish to your Sandbox". Is that ok?
GMikesell-WMF
updated the task description.
(Show Details)
Aug 20 2025, 8:17 PM
2025-08-20 20:17:17 (UTC+0)
GMikesell-WMF
updated Other Assignee, added:
GMikesell-WMF
GMikesell-WMF
updated the task description.
(Show Details)
GMikesell-WMF
updated the task description.
(Show Details)
GMikesell-WMF
changed the task status from
Open
to
In Progress
Aug 20 2025, 8:20 PM
2025-08-20 20:20:08 (UTC+0)
GMikesell-WMF
moved this task from
Needs QA
to
In-progress
on the
LPL Hypothesis
board.
SBisson
moved this task from
In-progress
to
Needs QA
on the
LPL Hypothesis
board.
Aug 21 2025, 2:32 PM
2025-08-21 14:32:24 (UTC+0)
Comment Actions
AC1: It is rightfully described in the task description as a warning, not an error, since it is informing the user of an issue but allowing them to move forward. The design mockup however uses the "error" icon and colors. I asked
@SGautam_WMF
for confirmation here
T396142#11014895
AC3: The error reporting UI will allow paging through errors if there are more than one. That system may or may not be identical to the design mock up but it's not what is being developed here. In my testing, I see that the publishing requirement error shows first, and the MT limit error is next.
AC4: The option to "Save as draft" is available under the cog icon right above the error box. Having this action inside of the error message is technically problematic, as noted here
T396142#11006130
. I'll let
@SGautam_WMF
decide if this is acceptable.
AC6: It would be interesting to test that someone with the right permissions on English Wikipedia doesn't see the error and can publish but if it was not the case and blocking everybody I think we would have heard about it.
GMikesell-WMF
added a comment.
Aug 25 2025, 6:49 PM
2025-08-25 18:49:32 (UTC+0)
Comment Actions
@SBisson
Ok sounds good with AC3 and AC6.
@SGautam_WMF
Hi, since we haven’t seen any responses on this for a little while, I’ll go ahead and move this to Sign-Off. You’re welcome to follow up there regarding
T396142#11106764
for AC1 and AC4. Thanks!
GMikesell-WMF
updated the task description.
(Show Details)
Aug 25 2025, 6:53 PM
2025-08-25 18:53:48 (UTC+0)
GMikesell-WMF
updated Other Assignee, removed:
GMikesell-WMF
GMikesell-WMF
moved this task from
Needs QA
to
Design Signoff
on the
LPL Hypothesis
board.
Nikerabbit
set the point value for this task to
Sep 4 2025, 10:26 AM
2025-09-04 10:26:26 (UTC+0)
SGautam_WMF
updated the task description.
(Show Details)
Sep 9 2025, 6:44 AM
2025-09-09 06:44:20 (UTC+0)
SGautam_WMF
added a comment.
Sep 9 2025, 6:51 AM
2025-09-09 06:51:11 (UTC+0)
Comment Actions
@SBisson
Apologies for late reply on this. It's fine to show it as a warning, I have also updated the mockup in task description. As a separate task I would like to explore ways to incorporate settings icon reference in the error message copy given we are not including "safe as draft" action in the copy.
SGautam_WMF
moved this task from
Design Signoff
to
Product Signoff
on the
LPL Hypothesis
board.
Sep 9 2025, 6:52 AM
2025-09-09 06:52:45 (UTC+0)
Nikerabbit
closed this task as
Resolved
Sep 10 2025, 1:40 PM
2025-09-10 13:40:12 (UTC+0)
SBisson
mentioned this in
T408727: CX Dashboard local customization not always shown
Oct 30 2025, 3:30 PM
2025-10-30 15:30:23 (UTC+0)
SBisson
mentioned this in
T369923: ContentTranslation (section mode) does not honor ContentTranslationPublishRequirements
Oct 30 2025, 3:39 PM
2025-10-30 15:39:27 (UTC+0)
Log In to Comment
Content licensed under Creative Commons Attribution-ShareAlike (CC BY-SA) 4.0 unless otherwise noted; code licensed under GNU General Public License (GPL) 2.0 or later and other open source licenses. By using this site, you agree to the Terms of Use, Privacy Policy, and Code of Conduct.
Wikimedia Foundation
Code of Conduct
Disclaimer
CC-BY-SA
GPL
Credits
US