Steps to replicate the issue (include links if applicable):
- Enable MultiBlocks ($wgUseCodexSpecialBlock = true; and $wgEnableMultiBlocks = true;)
- Visit Special:Log/block
- Click the "Remove block" link to unblock a currently blocked account
- You are taken to /w/index.php?title=Special:Block/<username1>&id=<id>&remove=1
- Press the "Cancel" or "Remove block" buttons (it doesn't actually matter which one)
- In the "Target" field in the resulting form, type another valid username
What happens?:
- The resulting URL is /wiki/Special:Block/<username2>?title=Special:Block/<username1>&id=<id>&remove=1
What should have happened instead?:
- The URL that appears basically has ?title= twice (since /wiki/<Title> is the same as /w/index.php?title=<Title>. It should only appear once. Also, the &id= and &remove= query params are superfluous after having dealt with the first user.
Software version (on Special:Version page; skip for WMF-hosted wikis like Wikipedia):
MediaWiki 1.44.0-alpha (46537e0)
Other information (browser name/version, screenshots, etc.):
Derived Requirement
Ensure that when blocking or unblocking multiple users in succession using Special:Block (with MultiBlocks and Codex enabled), the URL updates cleanly without duplicating the ?title= parameter or carrying over irrelevant parameters like &id= and &remove= from the previous user action.
Test Steps
Test Case 1: Ensure clean URL after blocking a second user
- Enable MultiBlocks ($wgUseCodexSpecialBlock = true; $wgEnableMultiBlocks = true;) on the test wiki.
- Visit Special:Log/block.
- Click "Remove block" for a currently blocked user (User1).
- You are navigated to /w/index.php?title=Special:Block/User1&id=<id>&remove=1.
- Press "Cancel" or "Remove block" (either action).
- In the now open block form, type a different valid username (User2) into the "Target" field.
- ✅❓❌⬜ AC1: Confirm that the resulting URL correctly updates to /wiki/Special:Block/User2 without retaining ?title=Special:Block/User1, &id=, or &remove= parameters and no duplicates after switching to another user..
Test Case 2: Switch to multiple users back-to-back without submitting a block
- After arriving at Special:Block/User1 with stale parameters (&id=, &remove=), type a second username (User2) into the target field.
- Without submitting, immediately change the target field again to a third username (User3).
- ✅❓❌⬜ AC2: Confirm that the URL updates correctly for User3 and that no old parameters (&id=, &remove=) from User1 or User2 persist.
QA Results - Test Beta
AC | Status | Details |
---|---|---|
1 | ✅ | T391571#10781772 |
2 | ✅ | T391571#10781772 |