Project:Retirement

The Developer Relations Undertakers project handles developer retirement, both when developers announce their retirement as well as due to developer inactivity.

Sending mail
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 user skips the alias in his reply, please forward the mail to the alias for archiving purposes.

Checking activity

 * gentoo.git commits (for devs with gentoo.git commit access):
 * 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 https://bugs.gentoo.org/custom_userhistory.cgi?matchstr=DEVELOPER@gentoo.org to see the last few Bugzilla activities. Activity is defined very broadly in this case so commenting, changing resolution, CC'ing etc. all count as activity. You need to look at each of those bugs to decide if the activity is related to development.
 * Forums:
 * Find the developer on member list, then use 'Find all posts by ...'
 * See also #650120 as request for better activity indication
 * Activity in other areas:
 * For activity in projects, contact the project to establish some way of determining activity
 * Contact the developer and ask for a way of determining activity
 * Check for devaway

Prior to inactivity retirement

 * 1) If the developer is inactive for more than two months:
 * 2) * Send him the First Mail asking him to consider removing himself from packages that he is not interested to maintain anymore and/or update his roles. Those packages should be announced as unmaintained to the  mailing list and re-assigned to maintainer-needed@gentoo.org until another developer or proxy-maintainer steps up and take care of them.
 * 3) * Find the developer 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: yy-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 of no response consider reassignment of the packages.
 * 14) ** Remember to reassign bugs to new maintainer after changing metadata.xml maintainer field.
 * 15) After four months from the first e-mail, if you still believe the developer is inactive:
 * 16) * Reopen the Packages reassignment bug:
 * 17) ** Change  to Retire: Full Name (nickname).
 * 18) ** Change  to second-mail-sent: yy-mm-dd.
 * 19) * Send him the Second Mail.
 * 20) * Wait a minimum of one month, to give the developer adequate time to respond on the bug or to the mail.
 * 21) If you get no response within the month from second mail:
 * 22) * Send the Third Mail.
 * 23) * Don't forget to change Status Whiteboard to third-mail-sent and to update the date there.
 * 24) * Wait another month.
 * 25) Close the bug if the developer is still considered active
 * 26) If the developer doesn't respond within six months since the first mail or is otherwise still considered inactive:
 * 27) * 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 Contributors list, left column at https://planet.gentoo.org/),.
 * Clean up any  the developer in question might be mentioned in. Using simple python script.
 * Remove him from all the teams he is still a member of: https://wiki.gentoo.org/wiki/Project:Gentoo and set developer status to
 * 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: - Packages reassignment - Bugs - IRC cloak - Infra - Wiki - Forum - Planet

Pending retirements
Click here to see all the pending retirements.

Undertaker scripts
The following scripts are currently available in undertaker-scripts repository to help automating the work of Undertakers:
 * check-commit-activity.py to find developers who haven't committed in N days (and don't have retirement bug open); 4 months, by default;
 * scan-open-bugs.py to scan open retirement bugs and report those for which action is overdue,
 * send-email.py along with mail templates to help sending e-mails on behalf of Undertakers.

What will happen with your mail address after retiring?
Your mail will be forwarded to the non-gentoo email address on file in LDAP, for a period of one month per year as developer, rounded up, min 1 month, max 6 months.

If no non-gentoo email address is on file, or the address on file bounces, your mail may be stored or discarded for up to the same time, at the discretion of infra.