Questions to answer
- How will we log partial block entries, especially when they are very complex? (e.g. 100 pages)
- Ideas documented below
- How will we log when an admin modifies an existing complex block?
- Current block modifications are logged as if the admin were setting a new block, but the message Admin blocked user is updated to Admin modified block settings for user
- Would we re-log every page/namespace in the block, or just the pages/namespaces added/removed?
- Should the pagenames be linked? Namespace names?
Ideas
Idea 1: One log entry per item blocked
- If an admin blocks a user from multiple pages/categories/namespaces, a log entry would be created for each item.
- For example:
- TIMESTAMP Admin-who-blocked (t|c|b) blocked BadApples (t|c) from editing the page Carbon with an expiration time of N (reason) (unblock | change block)
- TIMESTAMP Admin-who-blocked (t|c|b) blocked BadApples (t|c) from editing the page Nitrogen with an expiration time of N (reason) (unblock | change block)
- TIMESTAMP Admin-who-blocked (t|c|b) blocked BadApples (t|c) from editing the namespace Template with an expiration time of N (reason) (unblock | change block)
- All active blocks would then appear on Special:Log (filterable to the user), which would be how a user would see what pages they are prohibited from seeing
- Pros:
- Builds off existing structure and behaviors
- Cons:
- List could get long and gnarly.
- Potentially spammy if a user is blocked from a lot of pages at once
Idea 2: One log entry per block action, simplified
- If an admin sets a granular block, the log could be generic and point to another page that lists the full details of the block
- Example:
- TIMESTAMP Admin-who-blocked (t|c|b) blocked BadApples (t|c) from editing certain parts of the wiki with an expiration time of N (reason) (unblock | change block)
- “certain parts of the wiki” could be a link, or a “see details” could be added to the last parenthesis
- We could create a new Special page (or expand a current Special page) to shows the pages/cats/namespaces a user is blocked from
- Pros:
- Saves space, one log entry per block
- Cons:
- Block log is not comparable to other block log entries (e.g. to determine when/who/why a certain page was added to a block.) Block logs show a sequence of events and are used to determine wheel-waring and other changes. Because of this, I think Idea 2 is a no-go.
Idea 3: One log entry per block action, detailed
- Log every log action as a single log entry
- For example:
- TIMESTAMP Admin-who-blocked (t|c|b) blocked BadApples (t|c) from editing the page(s) Carbon, Nitrogren, Potassium, and Argon and the namespace(s) Template with an expiration time of N (reason) (unblock | change block)
- TIMESTAMP Admin-who-blocked (t|c|b) blocked BadApples (t|c) from editing the page(s) Antidisestablishmentarianism, Pneumonoultramicroscopicsilicovolcanoconiosis, Winchester-on-the-Severn, Maryland, Saint-Remy-en-Bouzemont-Saint-Genest-et-Isson, Supercalifragilisticexpialidocious, The Name of This Band Is Talking Heads, My Best Friend, General Vasili, Son of Joseph Stalin, United States v. Article Consisting of 50,000 Cardboard Boxes More or Less, Each Containing One Pair of Clacker Balls, Fourteenth Amendment to the United States Constitution, and 1995–96 Courage League Division 4 and the namespace(s) Template, Template talk:, Wikipedia, Wikipedia talk:, MediaWiki, MediaWiki talk:, File, File talk, Category, Category talk, Draft, Draft talk and User with an expiration time of N (upload block, This user has abused a lot of things and needs this very specific block.) (unblock | change block)
- Might not be possible in big blocks (e.g. user is blocked from 100 pages at once or certain length of pagenames)
- Might not be technically possible
- Pros:
- Single log entry
- Cons:
- Unreadable in complex situations
- "Clogs" up Special:Log and other places
Idea 4: Two logs
- Keep the existing block log as-is, but mark if a block is sitewide or partial
- For example:
- TIMESTAMP Admin-who-blocked (t|c|b) sitewide blocked BadApples (t|c) with an expiration time of N (account creation blocked, email disabled, cannot edit own talk page) (reason) (unblock | change block)
- TIMESTAMP Admin-who-blocked (t|c|b) partially blocked BadApples (t|c) with an expiration time of N (account creation blocked, email disabled, cannot edit own talk page) (reason) (unblock | change block)
- Introduce a new "partial block log" that only logs each individual item (page, namespace, action) blocked.
- For example:
- TIMESTAMP Admin-who-blocked (t|c|b) blocked BadApples (t|c) from editing the page Carbon with an expiration time of N (reason) (unblock | change block)
- TIMESTAMP Admin-who-blocked (t|c|b) blocked BadApples (t|c) from editing the page Nitrogen with an expiration time of N (reason) (unblock | change block)
- TIMESTAMP Admin-who-blocked (t|c|b) blocked BadApples (t|c) from editing the namespace Template with an expiration time of N (reason) (unblock | change block)
- The partial block log could be hidden from the primary view of Special:Log, so it wouldn't matter if it was unwieldy
- Could potentially cross-link between the two, maybe showing the block ID.
- Pros:
- Allows Special:Log to be readable, but also allows for the granularity needed to understand the exact contents of a block.
- Because Special:BlockList and Special:Contributions will show a table view of what a user is currently blocked from, the lengthy nature of the partial block log is acceptable.
- Cons:
- The partial log could become very lengthy and unwieldy.
- Are two logs really necessary? Potentially overkill.