Skip to content

refactor(supervisor): split progression engine gate checks into modules #641

Description

@xsovad06

Objective

Extract 13 gate checks from progression.py (1275 lines) into individual modules under sova/supervisor/gates/, improving testability and readability.

Findings

[P2] progression.py god file (1275 LOC)

  • Location: sova/supervisor/progression.py
  • Issue: Mixes 13 gate checks, dependency graph interaction, PR state evaluation, and spawn orchestration in one file. Hard to test individual gates in isolation.
  • Recommendation: Create sova/supervisor/gates/ with one module per gate (e.g., rate_limit.py, memory_pressure.py, dependency.py, coderabbit_quota.py). Keep orchestration in progression.py, delegate gate logic.

Files to Modify

  • sova/supervisor/progression.py
  • sova/supervisor/gates/__init__.py (new)
  • sova/supervisor/gates/*.py (13 new gate modules)

Estimated Effort

4 hours

Dependencies

None


Source: docs/HEALTH-AUDIT.md -- Health Audit 2026-08-12

Triage Assessment

Title: refactor(supervisor): split progression engine gate checks into modules
Has description: yes
Suitability: ready
Confidence: 85%
Complexity: moderate
Missing context: none
Labels: type: task, area: orchestrator

Issue has structured sections indicating clear scope; ready for research.

Metadata

Metadata

Assignees

No one assigned

    Labels

    agent:readyReady for autonomous developmentagent:triagedIssue triaged by SOVA agentarea: orchestratorAgent orchestrator (shell)type: taskImplementation task

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions