Analyzed 2026-03-21 by code2llm · Primary language: python · Python: 43, JavaScript: 5, Shell: 3
Run analysis multiple times to build a trend chart (≥3 data points needed).
| Module | Path | Lines | Funcs | Classes | CC max |
|---|---|---|---|---|---|
| coverage_html_cb_dd2e7eb5.js | htmlcov | 735 | 65 | 0 | 21 |
| _orchestrator.py | src/proxym/virt | 542 | 28 | 6 | 7 |
| panel.jsx | src/proxym/dashboard | 374 | 31 | 0 | 11 |
| __init__.py | src/proxym/accounts | 346 | 20 | 8 | 10 |
| __init__.py | src/proxym/router | 340 | 14 | 1 | 8 |
| __init__.py | src/proxym/cache | 333 | 10 | 3 | 9 |
| __init__.py | src/proxym/providers | 330 | 4 | 3 | 8 |
| browser_profiles.py | src/proxym/virt | 325 | 11 | 2 | 9 |
| _pipeline.py | src/proxym/api | 299 | 16 | 1 | 7 |
| __init__.py | src/proxym/dashboard | 292 | 21 | 4 | 5 |
| strategy.py | src/proxym/router | 253 | 14 | 3 | 9 |
| clonebox_adapter.py | src/proxym/virt | 209 | 17 | 2 | 5 |
| detector.py | src/proxym/context | 208 | 9 | 0 | 9 |
| ctl.py | src/proxym | 187 | 6 | 0 | 7 |
| client.py | src/proxym/mcp | 148 | 4 | 2 | 6 |
| __init__.py | src/proxym/watch | 146 | 5 | 1 | 5 |
| session.py | src/proxym/context | 144 | 8 | 2 | 6 |
| main.py | src/proxym | 136 | 2 | 0 | 3 |
| useDashboardData.js | src/proxym/dashboard/hooks | 126 | 22 | 0 | 5 |
| frontend.py | src/proxym/api | 120 | 6 | 0 | 5 |
| Severity | Target | Type | Value | Limit |
|---|---|---|---|---|
| error | table | cc_exceeded | 21 | 15 |
| error | table_body_rows | cc_exceeded | 21 | 15 |
| error | no_rows | cc_exceeded | 21 | 15 |
| error | footer | cc_exceeded | 21 | 15 |
| error | ratio_columns | cc_exceeded | 21 | 15 |
| error | filter_handler | cc_exceeded | 21 | 15 |
| error | useDashboardData | high_fan_out | 19 | 10 |
| error | detect_firefox_profiles | high_fan_out | 17 | 10 |
| error | _detect_chromium_family | high_fan_out | 17 | 10 |
| error | analyze_request | high_fan_out | 15 | 10 |
| error | sortColumn | high_fan_out | 15 | 10 |
| error | table | high_fan_out | 15 | 10 |
| error | table_body_rows | high_fan_out | 15 | 10 |
| error | no_rows | high_fan_out | 15 | 10 |
| error | footer | high_fan_out | 15 | 10 |
| Function | Fan-out | Note |
|---|---|---|
| useDashboardData | 19 | Orchestrates 19 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. |
| analyze_request | 15 | Analysis pipeline, 15 stages |
| sortColumn | 15 | Orchestrates 15 calls |
| table | 15 | Orchestrates 15 calls |
| table_body_rows | 15 | Orchestrates 15 calls |
| no_rows | 15 | Orchestrates 15 calls |
| footer | 15 | Orchestrates 15 calls |
| ratio_columns | 15 | Orchestrates 15 calls |
| # | Action | Impact | Effort |
|---|---|---|---|
| 1 | Split god module htmlcov/coverage_html_cb_dd2e7eb5.js (735L, 0 classes) | high | high |
| 2 | Split god module src/proxym/virt/_orchestrator.py (542L, 6 classes) | high | high |
| 3 | Split table (CC=21 → target CC<10) | medium | low |
| 4 | Split table_body_rows (CC=21 → target CC<10) | medium | low |
| 5 | Split no_rows (CC=21 → target CC<10) | medium | low |
| 6 | Split footer (CC=21 → target CC<10) | medium | low |
| 7 | Split ratio_columns (CC=21 → target CC<10) | medium | low |
| 8 | Split filter_handler (CC=21 → target CC<10) | medium | low |
| 9 | Break circular dependency: src.proxym.virt.profiles.merge_profiles | medium | low |
| 10 | Reduce useDashboardData fan-out (currently 19) | medium | medium |
| 11 | Reduce detect_firefox_profiles fan-out (currently 17) | medium | medium |
| 12 | Reduce _detect_chromium_family fan-out (currently 17) | medium | medium |