Add a new command that reports the current status of a provided AfC draft.
This command should be protected under the I flag.
Logic
- Check for page existence. If it doesn't exist, try to fuzzy-match to an existing page - add Draft: if it doesn't exist, differentiate by case, etc. If more than one found, ask for clarification.
- Pull all the categories the page is in. Changes to MediaWikiApi Lib will be needed for this
- Check the categories:
- if in Category:Pending AfC submissions being reviewed now, then the article is supposedly in the middle of being reviewed and we should report this.
- if in Category:Pending AfC submissions, it's supposed to be in the review queue. See if we can pull the sortkey from the page to check - C or M probably means something is messed up or it's in the middle of acceptance and we should just report an error. R is probably an error as we should have already handled this. D should probably be raised as an info point, need to check what other categories a draft is in but otherwise it should be fine to continue with whatever else we find. P should contain everything else. There should also be "by date" categories which tell us how long a page has been in the queue for which might be useful to include in a message if we can sanely parse that out. Send a message saying something like Review waiting for {duration}, please be patient. This may take more than {expected duration}. There are {totaldrafts} drafts currently waiting for review.
- if in Category:Draft AfC submissions, it's not currently submitted for review, and report this.
- if in one of the rejected categories below, do something fancy with it reporting a brief summary of why it was rejected.
- if in one of the declined categories below, do something fancy with it reporting a brief summary of why it was declined.
Things to consider
- As Helpmebot is inherently multi-wiki and multi-channel, we probably need a way of either disabling this when not in an enwiki channel.
- Changes to the categories and messages - this shouldn't be hard-coded into the bot in case things change.
- Figure out how to pull the oldest draft
- Pulling the total number of drafts can be done with the existing command. It (hopefully) pulls from MediaWikiApi Lib anyway, so just do the same sort of call
- Performance - keep an eye on the number of API calls we're doing, as it might add up and impact performance.
Rejection categories
- Category:Rejected AfC submissions,
- Category:AfC submissions rejected as non-notable
- Category:AfC submissions rejected as unencyclopedic
Decline categories
- AfC submissions declined as an advertisement
- AfC submissions declined as all plot
- AfC submissions declined as already existing
- AfC submissions declined as blank
- AfC submissions declined as BLP violations
- AfC submissions declined as copyright violations
- AfC submissions declined with a custom reason
- AfC submissions declined as a dictionary definition
- AfC submissions declined as a duplicate
- AfC submissions declined as an essay
- AfC submissions declined as a non-notable film
- AfC submissions declined as jokes
- AfC submissions declined as lacking context
- AfC submissions declined as lacking reliable third-party sources
- AfC submissions declined as needing footnotes
- AfC submissions declined as needing to be merged
- AfC submissions declined as a neologism
- AfC submissions declined as a news report on a single event
- AfC submissions declined as non-notable
- AfC submissions declined as a non-notable academic topic
- AfC submissions declined as a non-notable athletic topic
- AfC submissions declined as a non-notable biography
- AfC submissions declined as a non-notable musical topic
- AfC submissions declined as a non-notable organization
- AfC submissions declined as non-notable web content
- AfC submissions declined as not in English
- AfC submissions declined as not suitable for Wikipedia
- AfC submissions declined as not written in a neutral point of view
- AfC submissions declined as being previously deleted
- AfC submissions declined as a redirect
- AfC submissions declined as a test
- AfC submissions declined as being vandalism or attack pages