Skip to content

refactor: extract CommunityPanelController and MSTPanelController from Main.java#98

Open
sauravbhattacharya001 wants to merge 1 commit intomasterfrom
refactor/extract-community-mst-controllers
Open

refactor: extract CommunityPanelController and MSTPanelController from Main.java#98
sauravbhattacharya001 wants to merge 1 commit intomasterfrom
refactor/extract-community-mst-controllers

Conversation

@sauravbhattacharya001
Copy link
Owner

Summary

Extracts ~280 lines of community detection and MST panel logic from Main.java into dedicated controller classes, continuing the decomposition pattern established by ArticulationPanelController, ResiliencePanelController, and EgoPanelController.

New classes

  • CommunityPanelController — owns community detection UI, Louvain analysis lifecycle, overlay state, colour palette, and result formatting
  • MSTPanelController — owns MST panel UI, Kruskal computation lifecycle, overlay state, and component breakdown display

Impact

  • Main.java reduced from 1498 → 1216 lines (19% reduction)
  • No behavioral changes — identical UI and analysis logic, just relocated
  • Follows existing controller pattern (constructor injection of graph supplier + overlay callback)

Addresses #86

…m Main.java

Extract ~280 lines of community detection and MST panel logic from Main.java
into dedicated controller classes, following the same pattern already used by
ArticulationPanelController, ResiliencePanelController, and EgoPanelController.

- CommunityPanelController: owns community detection UI, Louvain analysis
  lifecycle, overlay state, colour palette, and result formatting
- MSTPanelController: owns MST panel UI, Kruskal computation lifecycle,
  overlay state, and component breakdown display
- Main.java reduced from 1498 to 1216 lines

Addresses #86 (god class decomposition)
@chatgpt-codex-connector
Copy link

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@github-actions github-actions bot added visualization Graph visualization and UI size/xl labels Mar 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/xl visualization Graph visualization and UI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant