# code2llm/evolution | 2183 func | 219f | 2026-03-24

NEXT[10] (ranked by impact):
  [1] !! SPLIT           src/proxym/dashboard/_tickets_api.py
      WHY: 676L, 8 classes, max CC=18
      EFFORT: ~4h  IMPACT: 12168

  [2] !! SPLIT           src/proxym/dashboard/users.py
      WHY: 928L, 3 classes, max CC=13
      EFFORT: ~4h  IMPACT: 12064

  [3] !! SPLIT-FUNC      TasksPanel  CC=129  fan=46
      WHY: CC=129 exceeds 15
      EFFORT: ~1h  IMPACT: 5934

  [4] !! SPLIT-FUNC      TicketsPanel  CC=87  fan=56
      WHY: CC=87 exceeds 15
      EFFORT: ~1h  IMPACT: 4872

  [5] !! SPLIT-FUNC      ProjectFormUnified  CC=129  fan=31
      WHY: CC=129 exceeds 15
      EFFORT: ~1h  IMPACT: 3999

  [6] !! SPLIT-FUNC      EnvironmentsPanel  CC=59  fan=42
      WHY: CC=59 exceeds 15
      EFFORT: ~1h  IMPACT: 2478

  [7] !! SPLIT-FUNC      TicketDispatchTable  CC=87  fan=27
      WHY: CC=87 exceeds 15
      EFFORT: ~1h  IMPACT: 2349

  [8] !! SPLIT-FUNC      ToolHealthPanel  CC=76  fan=26
      WHY: CC=76 exceeds 15
      EFFORT: ~1h  IMPACT: 1976

  [9] !! SPLIT-FUNC      SetupPanel  CC=36  fan=36
      WHY: CC=36 exceeds 15
      EFFORT: ~1h  IMPACT: 1296

  [10] !! SPLIT-FUNC      HumanTaskPanel  CC=65  fan=19
      WHY: CC=65 exceeds 15
      EFFORT: ~1h  IMPACT: 1235


RISKS[3]:
  ⚠ Splitting tests/gui/test_gui_vscode.py may break 0 import paths
  ⚠ Splitting src/proxym/dashboard/users.py may break 58 import paths
  ⚠ Splitting src/proxym/dashboard/_tickets_api.py may break 25 import paths

METRICS-TARGET:
  CC̄:          4.5 → ≤3.1
  max-CC:      129 → ≤20
  god-modules: 9 → 0
  high-CC(≥15): 105 → ≤52
  hub-types:   0 → ≤0

HISTORY:
  prev CC̄=4.5 → now CC̄=4.5
