User:Inactivity Bot: Difference between revisions

From Test Wiki
Content deleted Content added
Justman10000 (talk | contribs)
m Formatting
Justman10000 (talk | contribs)
m Code formatting
Line 1: Line 1:
{{bot|{{User|Justarandomamerican}} and {{User|TheAstorPastor}}|nouser=y}}
{{bot|{{User|Justarandomamerican}} and {{User|TheAstorPastor}}|nouser=y}}
This bot monitors user activity on Test Wiki and manages user rights based on inactivity thresholds. It specifically tracks administrators and bureaucrats, automatically removing rights from inactive users and notifying them of these changes.


This bot monitors user activity on Test Wiki and manages user rights based on inactivity thresholds.
==How It Works==
It specifically tracks administrators and bureaucrats, automatically removing rights from inactive users and notifying them of these changes.


== How It Works ==
#'''Login''': The bot logs in using credentials stored in environment variables.
#'''Fetch Users''': It retrieves a list of users in the monitored groups (<code>sysop</code>, <code>bureaucrat</code>), excluding users listed in <code>EXCLUDED_USERS</code>.
#'''Check Activity''': For each user, the bot fetches the timestamp of their last edit or logged action.
#'''Determine Status and Take Action''':
#*'''Warning Threshold''': Users inactive for more than 75 days receive a warning message on their talk page.
#*'''Removal Threshold''': Users inactive for more than 90 days have their rights removed.
#'''Rights Handling''':
#*'''Removable Rights''': The bot can directly remove <code>sysop</code> and <code>bureaucrat</code> rights.
#'''Communication''':
#*Posts warnings on user talk pages for those approaching inactivity threshold
#*Notifies users when rights are removed
#*Updates the [[Activity/Reports]] page with a comprehensive report


# '''Login''': The bot logs in using credentials stored in environment variables.
==Activity Reporting==
# '''Fetch Users''': It retrieves a list of users in the monitored groups (<code>sysop</code>, <code>bureaucrat</code>), excluding users listed in <code>EXCLUDED_USERS</code>.
# '''Check Activity''': For each user, the bot fetches the timestamp of their last edit or logged action.
# '''Determine Status and Take Action''':
#* '''Warning Threshold''': Users inactive for more than 75 days receive a warning message on their talk page.
#* '''Removal Threshold''': Users inactive for more than 90 days have their rights removed.
# '''Rights Handling''':
#* '''Removable Rights''': The bot can directly remove <code>sysop</code> and <code>bureaucrat</code> rights.
# '''Communication''':
#* Posts warnings on user talk pages for those approaching inactivity threshold
#* Notifies users when rights are removed
#* Updates the [[Activity/Reports]] page with a comprehensive report

== Activity Reporting ==
The bot generates detailed activity reports including:
The bot generates detailed activity reports including:


*Users warned about approaching the inactivity threshold
* Users warned about approaching the inactivity threshold
*Users with rights removed due to inactivity
* Users with rights removed due to inactivity
*Last activity date and days of inactivity for each user
* Last activity date and days of inactivity for each user
*Summary statistics of actions taken
* Summary statistics of actions taken


==Configuration==
== Configuration ==


*'''Warning Threshold''': 75 days
* '''Warning Threshold''': 75 days
*'''Rights Removal Threshold''': 90 days
* '''Rights Removal Threshold''': 90 days
*'''Warning Cooldown''': 14 days (minimum time between warnings)
* '''Warning Cooldown''': 14 days (minimum time between warnings)
*'''Report Retention''': 20 days (how long reports are kept on the wiki)
* '''Report Retention''': 20 days (how long reports are kept on the wiki)
*'''Monitored Groups''': <code>sysop</code>, <code>bureaucrat</code>
* '''Monitored Groups''': <code>sysop</code>, <code>bureaucrat</code>
*'''Bot-Removable Rights''': <code>sysop</code>, <code>bureaucrat</code>
* '''Bot-Removable Rights''': <code>sysop</code>, <code>bureaucrat</code>


==Excluded Users==
== Excluded Users ==
The bot excludes specific users from activity checks:
The bot excludes specific users from activity checks:


Line 47: Line 49:
* {{User|X}}
* {{User|X}}


==How does it run, and who runs it?==
== How does it run, and who runs it? ==
The bot automatically runs at 00 UTC everyday through GitHub Actions. For any updates to the list of excluded users, please contact Justarandomamerican or [[User:TheAstorPastor#How do you contact me?|TheAstorPastor]]
The bot automatically runs at 00 UTC everyday through GitHub Actions.
For any updates to the list of excluded users, please contact Justarandomamerican or [[User:TheAstorPastor#How do you contact me?|TheAstorPastor]]


==Where's the code for the bot?==
== Where's the code for the bot? ==
The code is available [https://github.com/younginspiration/Inactivity-Bot here]
The code is available [https://github.com/younginspiration/Inactivity-Bot here]