This page documents the mid-term plan for TPA in the year 2022.

Previous [roadmaps](roadmap) were done in a quarterly and yearly basis, but
starting this year we are using the [OKR](https://en.wikipedia.org/wiki/OKR) system to establish,
well, Objectives and Key Results. Those objectives are set for a 6
months period, so they cover two quarters and are therefore
established reviewed twice a year.

# Objectives and Key Results

Each heading below here is an objective and the items below are key
results that will allow us to measure whether the objectives were met
mid-year 2022. As a reminder, those are supposed to be ambitious: we
do not expect to do everything here and instead aim for the 60-70%
mark.

## Improve mail services

 1. David doesn't complain about "mail getting into spam" anymore
 2. RT is not full of spam
 3. we can deliver and receive mail from state.gov

[milestone](https://gitlab.torproject.org/groups/tpo/tpa/-/milestones/4)

## Retire old services

 1. SVN is retired and people are happy with the replacement
 2. establish a plan for gitolite/gitweb retirement
 3. retire schleuder in favor of ... official Signal groups?
    ... mailman-pgp? RFC2549 with one-time pads?

[milestone](https://gitlab.torproject.org/groups/tpo/tpa/-/milestones/1)

## Cleanup and publish the sysadmin code base

 1. sanitize and publish the Puppet git repository
 2. implement basic CI for the Puppet repository and use a MR workflow
 3. deploy dynamic environments on the Puppet server to test new features

[milestone](https://gitlab.torproject.org/groups/tpo/tpa/-/milestones/3)

## Upgrade to Debian 11 "bullseye"

 1. all machines are upgraded to bullseye
 2. migrate to Prometheus for monitoring (or upgrade to Inciga 2)
 3. upgrade to Mailman 3 or retire it in favor of Discourse (!)

[milestone](https://gitlab.torproject.org/groups/tpo/tpa/-/milestones/5)

## Provision a new, trusted high performance cluster

 1. establish a new PoP on the US west coast with trusted partners and hardware ($$)
 2. retire moly and move the DNS server to the new cluster
 3. reduce VM deployment time to one hour or less (currently 2 hours)

[milestone](https://gitlab.torproject.org/groups/tpo/tpa/-/milestones/2)

## Non-objectives

Those things will *not* be done during the specified time frame:

 * LDAP retirement
 * static mirror system retirement
 * new offsite backup server
 * complete email services (e.g. mailboxes)
 * search.tpo/SolR
 * web metrics
 * user survey
 * stop global warming

# How those were established

The goals were set based on a brainstorm by anarcat but that was also
based on roadmap items from the [2021 roadmap](roadmap/2021) that were not
completed. We have not ran a survey this year around, because we still
haven't responded to everything that was told the last time. It was
also felt that the survey takes a long time to process (for us) and
respond to (for everyone else).

The OKRs were actually approved in [TPA-RFC-13](policy/tpa-rfc-13-okrs-for-roadmap) after a discussion
in a [meeting](meeting/2021-10-07) as well. See also [issue 40439](https://gitlab.torproject.org/tpo/tpa/team/-/issues/40439) and the
[establish the 2022 roadmap milestone](https://gitlab.torproject.org/tpo/tpa/team/-/milestones/11).

# External Documentation

 * [Introduction](https://rework.withgoogle.com/guides/set-goals-with-okrs/steps/introduction/)
 * [How to set OKRs](https://rework.withgoogle.com/guides/set-goals-with-okrs/steps/set-objectives-and-develop-key-results/)
