Google Code-In 2014
Task Preview
HGBot: Check Access LevelsCopyleft Games Group
STATUS: DRAFT

HGBot is a Python program that automates our Mercurial repository management, handles Mercurial authentication, and provides user interfaces such as IRC.

Under our current setup anyone can register an account on HGBot and gains equal access and restrictions as all other users. Obviously we would like experienced developers to have fewer restrictions (eg, being able to push changesets under others names, add tags, etc) while newer developers should have stricter restrictions.

Add some appropriate access levels (eg, "contributor", "developer", "administrator") to the database and update the checks to use these. New users should default to "contributor", and for now a server administrator will just edit access levels on the database directly (IRC command for this may become a second GCI task). As a minor change to the IRC code, display a users current access level in the INFO command response.

While working on this task you should join and remain in #CopyleftGames on Freenode to get help, feedback, and guidance from mentors and other developers. Code updates which may affect your work are also announced here as they happen.

When you've done, commit your work and post the resulting changeset url to this task.