Consolidate CI minutes logic under `Ci::Minutes` namespace
Problem
The current state of the code has several problems:
- Currently this logic is spread across methods in
Namespace
,NamespaceStatistics
andNamespacesHelper
classes. - These with methods cross reference each other in a way that is hard to understand the logic.
- All methods are public, so they are all potentially being used in the view, making refactoring difficult.
- 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.