Problem
If a special form page (like Special:Block) extends FormSpecialPage then users who are partially blocked are also blocked from that Special page.
if ( $this->requiresUnblock() && $user->isBlocked() ) {
$block = $user->getBlock();
throw new UserBlockedError( $block );
}Solution
This should be changed to something like:
if ( $this->requiresUnblock() ) {
$block = $user->getBlock();
if ( $block && $block->isSitewide() ) {
throw new UserBlockedError( $block );
}
}Affected Special Pages
Important to fix, release blocker for Commons:
Should fix eventually:
- https://test.wikipedia.org/wiki/Special:StructuredDiscussions (not on EN or IT)
- https://test.wikipedia.org/wiki/Special:PasswordReset
- https://test.wikipedia.org/wiki/Special:BotPasswords (admin only)
I have no idea what these are, and they're not on EN or IT Wikipedia. Maybe never fix:

