Project:Retirement/For Project Members

Communicating
The most important part of Undertakers work is proper communication. Every action must be communicated to the developer appropriately.

Whenever sending mail on behalf of Undertakers, please remember to:


 * CC the alternative e-mail addresses of the developer (found in LDAP)
 * CC
 * set Reply-To to

If you forget to do that or the developer skips the alias in his reply, please forward the mail to the alias for archiving purposes.

Undertaker scripts
The following scripts are currently available in undertaker-scripts repository to help automating the work of Undertakers:


 * to find developers who haven't committed in N days (and don't have retirement bug open); 4 months, by default;
 * to scan open retirement bugs and report those for which action is overdue,
 * along with mail templates to help sending e-mails on behalf of Undertakers.

Retirement on request
If the developer explicitly requests retirement, explicitly leave a comment saying that we're giving customary 14 days for reconsideration. If the developer doesn't cancel retirement, proceed with retirement.

Helpful links for monitoring activity

 * gentoo.git commits:
 * git log: https://gitweb.gentoo.org/repo/gentoo.git/log/
 * graphical commit timeline: https://qa-reports.gentoo.org/output/active-devs.html (updated daily)
 * check-commit-activity script: https://github.com/mgorny/undertaker-scripts/blob/master/check-commit-activity.py
 * monthly "slacker" report mails from Infra team to
 * Bugzilla activity:
 * Check
 * Forums:
 * Find the developer on member list, then use 'Find all posts by ...'
 * See also #650120 as request for better activity indication

Also remember to check for devaway

Finding devs without commit access
On LDAP-enabled host (e.g. woodpecker):

Timeline
The timeline for inactivity retirement roughly is:
 * after at least 2 months of inactivity, send first mail
 * 2 weeks after first mail, disable commit access
 * 4 weeks after first mail, reassign packages
 * 6 months after first mail, send second mail
 * 3 months after second mail, send third mail
 * 2 months after third mail, send fourth mail
 * 1 month after fourth mail, retire

Detailed process

 * 1) If the developer is inactive for more than two months:
 * 2) * Send the first mail asking the developer to consider removing themselves from packages they are uninterested in maintaining and/or update their project roles. Packages no longer in the developer's care should be announced as unmaintained to the mailing list and re-assigned to  until another developer or proxy-maintainer steps up and take care of them.
 * 3) * Find the developer's bug:
 * 4) ** If the developer predates recruitment bugs (there was no recruitment bug), open a new bug.
 * 5) ** Change  to:
 * 6) *** Developers with gentoo.git commit access: Packages reassignment: Full Name (nickname).
 * 7) *** Developers without gentoo.git commit access: Status update: Full Name (nickname).
 * 8) ** Reassign the bug to  (Retirement Admin).
 * 9) ** Change  to first-mail-sent: yyyy-mm-dd.
 * 10) ** Make sure the developer and relevant teams are CC'ed on the bug.
 * 11) ** Set Alias bug field to nickname.
 * 12) ** Once situation is clarified, close the bug as FIXED/WONTFIX.
 * 13) * After two weeks with no response, suspend commit access to gentoo.git.
 * 14) ** Send informational mail to the developer (TODO: provide a template).
 * 15) * After four weeks of no response consider reassignment of the packages.
 * 16) ** Remember to reassign bugs to new maintainer after changing metadata.xml maintainer field.
 * 17) After six months from the first e-mail, if you still believe the developer is inactive:
 * 18) * Reopen the Packages reassignment bug:
 * 19) ** Change  to Retire: Full Name (nickname).
 * 20) ** Change  to second-mail-sent: yyyy-mm-dd.
 * 21) * Send the second mail.
 * 22) After three months from second mail, send third mail.
 * 23) * Change  to third-mail-sent: yyyy-mm-dd.
 * 24) After two months from third mail, send fourth mail.
 * 25) After one month from the second e-mail, if you still believe the developer is inactive:
 * 26) * Change  to fourth-mail-sent: yyyy-mm-dd.
 * 27) Close the bug if the developer is still considered active
 * 28) If the developer doesn't respond within twelve months since the first mail or is otherwise still considered inactive:
 * 29) * State that on the bug and ask Infra to start retirement process.

Retirement procedure
Retirement procedure looks like this:
 * Change the  to.
 * CC,   (when you find DEV in Planet contributors list),.
 * Clean up any  the developer in question might be mentioned in. Using simple python script.
 * Remove the developer from all the teams of which they are still a member of on the Project:Gentoo page, and set developer status to  on the developer's wiki user page.
 * Search for all NEW and REOPEN bugs assigned to the retired developer on Gentoo Bugzilla and reassign them to the remaining package maintainers (or maintainer-needed). Information to whom reassign can be obtained from file of that package.
 * Wait for Infrastructure, Planet and Forums admins to retire developer in question before proceeding further.
 * Remove access to  (access is either removed completely or changed to voice depending on whether they ask for it or they're still considered active and helpful in the channel). Ask a freenode staffer (#gentoo-groupcontacts channel) to reset the cloak to a non-gentoo one.

Close the bug once all of the above steps are finished!

Status tracking for retirement bugs
Pending: - Package reassignment - Bugs - Projects (Wiki) - Infra (LDAP, bugs, wiki, d.g.o) - Gitolite - GitHub - Forums - Planet - IRC cloak

Pending retirements
Click here to see all the pending retirements.