Skip to content

Add retry logic to GitHub client for network resilience - #2

Open
MalayBhaveshPandya wants to merge 2 commits into
mainfrom
feature/refine-analysis-report
Open

MalayBhaveshPandya wants to merge 2 commits into
mainfrom
feature/refine-analysis-report

Conversation

@MalayBhaveshPandya

Copy link
Copy Markdown
Collaborator

Summary
This PR refactors the architecture analysis system, improves network reliability, and enhances the codebase structure.

Changes
🔄 Network Resilience
Added
retry_with_backoff
helper in
github/client.py
for automatic retries (3 attempts with exponential backoff)
Handles transient network errors like "Server disconnected without sending a response"
🏗️ Architecture Module Refactoring
Deleted: Monolithic architecture_deep.py (613 lines)
Added: New modular analysis/architecture/ package:
analyzer.py - Main architecture analyzer
context_extractor.py - Context extraction logic
graph_engine.py - Graph-based analysis
llm_client.py - LLM integration
models.py - Data models
📦 Other Improvements
Simplified debt_prioritizer.py (315 lines reduced)
Added
run_system.py

  • Unified script to start both backend and frontend servers
    Minor fixes to endpoints.py, llm/client.py, and
    ui/app.py
    Stats
    14 files changed, 1,035 insertions(+), 840 deletions(-)
    Testing
    Verified backend server starts successfully
    Verified UI connects to backend
    Tested retry logic handles GitHub API disconnections

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant