Project:Retirement/For Project Members

From Gentoo Wiki
Jump to:navigation Jump to:search

Communicating

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

Whenever sending mail on behalf of the project, please remember to:

  • CC the alternative e-mail addresses of the developer (found in LDAP)
  • CC retirement@gentoo.org
  • set Reply-To to retirement@gentoo.org

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.

Helper scripts

The following scripts are currently available in app-admin/gentoo-retirement-scripts (gentoo-retirement-scripts) repository to help automating the work of the project members:

  • 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 the project.

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.

Inactivity retirement

Helpful links for monitoring activity

Also remember to check for devaway

Finding devs without commit access

On LDAP-enabled host (e.g. woodpecker):

user $ldapsearch -Z -LLL -b 'ou=devs,dc=gentoo,dc=org' '(&(!(gentooAccess=git.gentoo.org/repo/gentoo.git))(gentooStatus=active))' gentooJoin gentooRetire gentooStatus gentooDevBug gentooRoles

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

Tip
Retirement scripts take care of all those actions for you.
  1. If the developer is inactive for more than two months:
    • 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 gentoo-dev@lists.gentoo.org mailing list and re-assigned to maintainer-needed@gentoo.org until another developer or proxy-maintainer steps up and take care of them.
    • Find the developer's bug:
      • If the developer predates recruitment bugs (there was no recruitment bug), open a new bug.
      • Change Summary to:
        • Developers with gentoo.git commit access: Packages reassignment: Full Name (nickname).
        • Developers without gentoo.git commit access: Status update: Full Name (nickname).
      • Reassign the bug to retirement@gentoo.org (Retirement Admin).
      • Change Status Whiteboard to first-mail-sent: yyyy-mm-dd.
      • Make sure the developer and relevant teams are CC'ed on the bug.
      • Set Alias bug field to nickname.
      • Once situation is clarified, close the bug as FIXED/WONTFIX.
    • After two weeks with no response, suspend commit access to gentoo.git.
      • Send informational mail to the developer (TODO: provide a template).
    • After four weeks of no response consider reassignment of the packages.
      • Remember to reassign bugs to new maintainer after changing metadata.xml maintainer field.
  2. After six months from the first e-mail, if you still believe the developer is inactive:
    • Reopen the Packages reassignment bug:
      • Change Summary to Retire: Full Name (nickname).
      • Change Status Whiteboard to second-mail-sent: yyyy-mm-dd.
    • Send the second mail.
  3. After three months from second mail, send third mail.
    • Change Status Whiteboard to third-mail-sent: yyyy-mm-dd.
  4. After two months from third mail, send fourth mail.
  5. After one month from the second e-mail, if you still believe the developer is inactive:
    • Change Status Whiteboard to fourth-mail-sent: yyyy-mm-dd.
  6. Close the bug if the developer is still considered active
  7. If the developer doesn't respond within twelve months since the first mail or is otherwise still considered inactive:

Retirement

Retirement procedure

Retirement procedure looks like this:

  • Change the Status Whiteboard to infra-retire: yyyy-mm-dd.
  • CC infra-bugs@gentoo.org, planet@gentoo.org (when you find DEV in Planet contributors list), forum-mods@gentoo.org.
  • Clean up any metadata.xml 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 Is active: No 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 metadata.xml file of that package.
  • Wait for Infrastructure, Planet and Forums admins to retire developer in question before proceeding further.
  • Remove access to #gentoo-dev (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 Libera.Chat 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.