proxy — Health Dashboard

# proxy — Good

Analyzed 2026-03-23 by code2llm · Primary language: python · Python: 99, JavaScript: 23, Shell: 5

1,025
Functions
106
Classes
111
Files
31,381
Lines
3
Languages
3.6
Avg CC
58
Critical (CC≥10)
0
Duplicates
0
Cycles

## Language Distribution

## Largest Modules (lines)

## Most Complex Modules (functions)

## Evolution

## Top Modules (127)

Module | Path | Lines | Funcs | Classes | CC max
--- | --- | --- | --- | --- | ---
diagnostics.py | src/proxym/api | 744 | 18 | 0 | 15
coverage_html_cb_dd2e7eb5.js | htmlcov | 735 | 65 | 0 | 21
voice.jsx | src/proxym/dashboard/components | 521 | 46 | 0 | 70
tickets.jsx | src/proxym/dashboard/components | 471 | 20 | 0 | 20
projects.jsx | src/proxym/dashboard/components | 406 | 15 | 0 | 30
tickets.py | src/proxym/dashboard | 370 | 23 | 9 | 17
__init__.py | src/proxym/router | 355 | 14 | 1 | 9
__init__.py | src/proxym/accounts | 350 | 20 | 8 | 10
repair_agent.py | src/proxym/observability | 341 | 9 | 1 | 14
__init__.py | src/proxym/cache | 333 | 10 | 3 | 9
entrypoint.sh | services/vscode | 333 | 1 | 0 | 0
__init__.py | src/proxym/providers | 331 | 4 | 3 | 8
browser_profiles.py | src/proxym/virt | 325 | 11 | 2 | 9
frontend.py | src/proxym/api | 320 | 26 | 0 | 6
tickets.py | src/proxym/cli | 311 | 13 | 0 | 12
_pipeline.py | src/proxym/api | 299 | 16 | 1 | 7
dsl.py | src/proxym/cli | 287 | 8 | 2 | 5
__init__.py | src/proxym/observability | 279 | 8 | 0 | 7
vms.jsx | src/proxym/dashboard/components | 275 | 30 | 0 | 32
__init__.py | src/proxym/projects | 275 | 14 | 4 | 21

## Alerts (20)

Severity | Target | Type | Value | Limit
--- | --- | --- | --- | ---
critical | VoiceChat | cc_exceeded | 70 | 15
critical | VoiceChat | high_fan_out | 54 | 10
critical | LogPanel | cc_exceeded | 34 | 15
critical | VMsPanel | cc_exceeded | 32 | 15
critical | ProjectCard | cc_exceeded | 30 | 15
critical | DiagRooConfig | cc_exceeded | 29 | 15
critical | run_all_tests | high_fan_out | 28 | 10
critical | chat_completions | high_fan_out | 27 | 10
critical | DiagnosticsPanel | cc_exceeded | 26 | 15
critical | DiagnosticsPanel | high_fan_out | 22 | 10
critical | useDashboardData | high_fan_out | 20 | 10
critical | AddProjectForm | high_fan_out | 20 | 10
error | ProjectRegistry._enrich_local | cc_exceeded | 21 | 15
error | table | cc_exceeded | 21 | 15
error | table_body_rows | cc_exceeded | 21 | 15

## Hotspots (10)

Function | Fan-out | Note
--- | --- | ---
VoiceChat | 54 | Orchestrates 54 calls
run_all_tests | 28 | Run all diagnostic tests and return comprehensive status.
chat_completions | 27 | OpenAI-compatible chat completions with intelligent routing. Extra headers: X
DiagnosticsPanel | 22 | Orchestrates 22 calls
useDashboardData | 20 | Orchestrates 20 calls
AddProjectForm | 20 | Orchestrates 20 calls
LogPanel | 19 | Orchestrates 19 calls
TicketsPanel | 18 | Orchestrates 18 calls
detect_firefox_profiles | 17 | Detect Firefox profiles by parsing profiles.ini.
_detect_chromium_family | 17 | Detect profiles for Chrome/Chromium from Local State file.

## Refactoring Priorities (15)

# | Action | Impact | Effort
--- | --- | --- | ---
1 | Split DiagnosticsPanel (CC=26 → target CC<10) | high | low
2 | Split LogPanel (CC=34 → target CC<10) | high | low
3 | Split VMsPanel (CC=32 → target CC<10) | high | low
4 | Split VoiceChat (CC=70 → target CC<10) | high | low
5 | Split DiagRooConfig (CC=29 → target CC<10) | high | low
6 | Split ProjectCard (CC=30 → target CC<10) | high | low
7 | Split god module src/proxym/dashboard/components/voice.jsx (521L, 0 classes) | high | high
8 | Split god module htmlcov/coverage_html_cb_dd2e7eb5.js (735L, 0 classes) | high | high
9 | Split god module src/proxym/api/diagnostics.py (744L, 0 classes) | high | high
10 | Split TicketManager._apply_filters (CC=17 → target CC<10) | medium | low
11 | Split ProjectRegistry._enrich_local (CC=21 → target CC<10) | medium | low
12 | Split _check_providers_config (CC=15 → target CC<10) | medium | low
13 | Split table (CC=21 → target CC<10) | medium | low
14 | Split table_body_rows (CC=21 → target CC<10) | medium | low
15 | Split no_rows (CC=21 → target CC<10) | medium | low