Skip to content

Consolidate CI minutes logic under `Ci::Minutes` namespace

Problem

The current state of the code has several problems:

  1. Currently this logic is spread across methods in Namespace, NamespaceStatistics and NamespacesHelper classes.
  2. These with methods cross reference each other in a way that is hard to understand the logic.
  3. All methods are public, so they are all potentially being used in the view, making refactoring difficult.
  4. Test coverage for some of these methods is low given the criticality around purchased CI minutes.

Solution

We have started a series of refactorings to bring all this logic under a new Ci::Minutes namespace where it will be centralized under specific domain responsibility.