Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
15 commits
Select commit Hold shift + click to select a range
17c991d
Add export functionality to save recap summaries as PNG images or HTM…
Nov 7, 2025
c5476b9
Update badge design with warm color scheme and improved layout for be…
Nov 7, 2025
8e5ec84
Add theme selector with dark, light, and default options for badge ex…
Nov 7, 2025
8a9e301
Update badge aspect ratio from 4:3 to 16:10 and refine styling for be…
Nov 7, 2025
823a6e0
fix: wrap dummyOutput in a div for improved styling and layout consis…
BrunoV21 Nov 7, 2025
8ba7418
style: update button and theme option colors for improved visibility …
BrunoV21 Nov 7, 2025
a626078
style(ui): change button text color from white to black for improved …
BrunoV21 Nov 7, 2025
02b69f4
style(badge): increase title font size and update font family to Maus…
BrunoV21 Nov 8, 2025
d499eeb
style(ui): update badge gradient and background colors for improved v…
BrunoV21 Nov 8, 2025
5f6529e
style(ui): remove export button borders and shadows, replace button e…
BrunoV21 Nov 8, 2025
cf12169
style(ui): remove borders, border-radius, and box-shadow from theme s…
BrunoV21 Nov 8, 2025
948ae88
refactor(api): return username from store_fetcher and simplify extern…
BrunoV21 Nov 8, 2025
d42cde7
fix(auth): move GitHub username assignment from repo fetch to PAT aut…
BrunoV21 Nov 8, 2025
bcf8d91
style(ui): improve export modal responsive design and fix mobile layo…
BrunoV21 Nov 8, 2025
2f913e0
prompt(pr-description): enhance PR generation to consolidate and summ…
BrunoV21 Nov 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 3 additions & 5 deletions app/api/server/routes.py
Original file line number Diff line number Diff line change
Expand Up @@ -81,9 +81,7 @@ async def external_signup(app: str, accessToken: str, provider: str):
response = await create_llm_session()
response["token"] = token
response["provider"] = provider
final_response = await store_fetcher_endpoint(response)
session_id = final_response.get("session_id")
return {"session_id": session_id}
return await store_fetcher_endpoint(response)

@router.post("/pat")
async def store_fetcher_endpoint(request: Request):
Expand Down Expand Up @@ -111,8 +109,8 @@ async def store_fetcher_endpoint(request: Request):

response = await create_llm_session()
session_id = response.get("session_id")
store_fetcher(session_id, token, provider)
return {"session_id": session_id}
username = store_fetcher(session_id, token, provider)
return {"session_id": session_id, "username": username}

async def create_llm_session(
request: Optional[LlmConfig] = None
Expand Down
3 changes: 2 additions & 1 deletion app/api/services/fetcher_service.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
# In-memory store mapping session_id to its respective fetcher instance
fetchers: Dict[str, BaseFetcher] = {}

def store_fetcher(session_id: str, pat: str, provider: Optional[str] = "GitHub") -> None:
def store_fetcher(session_id: str, pat: str, provider: Optional[str] = "GitHub") -> str:
"""
Store the provided PAT associated with the given session_id.

Expand All @@ -34,6 +34,7 @@ def store_fetcher(session_id: str, pat: str, provider: Optional[str] = "GitHub")
fetchers[session_id] = URLFetcher(url=pat)
else:
raise HTTPException(status_code=400, detail="Unsupported provider")
return fetchers[session_id].user.login
except ValueError as e:
raise HTTPException(status_code=400, detail=str(e))
except Exception as e:
Expand Down
57 changes: 41 additions & 16 deletions app/api/services/prompts.py
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,32 @@
PR_DESCRIPTION_SYSTEM = """
### System Prompt for Pull Request Title and Description Generation

You are an AI assistant tasked with generating **professional**, **concise**, and **well-structured** pull request (PR) titles and descriptions based on a list of commit messages. Add a touch of expressiveness using **relevant emojis** to make the PR more engaging, without overdoing it ✨
You are an AI assistant tasked with generating **professional**, **concise**, and **well-structured** pull request (PR) titles and descriptions based on a list of commit messages.
Add a touch of expressiveness using **relevant emojis** to make the PR more engaging, without overdoing it ✨

Your main goal is to produce a **final, meaningful summary of the net changes** introduced by the PR β€” not a chronological log of commits.

---

#### πŸ” Core Behavior: Integrate and Summarize Meaningful Changes

When analyzing commits:

1. **Read and analyze all commits** included in the PR.
2. **Group related commits** that affect the same feature, file, or functionality.
- For example, if commits say:
- β€œadd feature X”
- β€œfix bug in feature X”
- β€œrefactor feature X for performance”
- These should be merged into a single conceptual change, e.g.
β†’ β€œImplemented feature X with validation and performance improvements.”
3. **Integrate all improvements, fixes, and refinements** into the original contribution.
- Summarize only the **final end state** (what the code achieves now), not the sequence of edits that led there.
4. **Ignore intermediate or reverted states** β€” only include meaningful contributions that persist in the final version.
5. **Focus on global changes and user-facing impact**, not on verbs like β€œadded / updated / deleted.”
- Emphasize the outcome and purpose.

---

#### Output Format:
Your response must begin with a **plain-text Title** on the first line (no markdown formatting), followed by a markdown-formatted description.
Expand Down Expand Up @@ -214,42 +239,42 @@
- `## πŸ“š Documentation`
- `## βœ… Tests`
- `## πŸ—’οΈ Notes`
- Use bullet points for individual changes and consolidate redundant commits.
- Use bullet points for individual changes and **merge related commits** into unified, meaningful summaries.
- Maintain a **professional**, **clear**, and **reviewer-friendly** tone.
- Avoid commit hashes, timestamps, or author information.
- Avoid unnecessary repetition or overly technical jargon unless essential.
- Avoid unnecessary repetition, overly technical details, or references to intermediate commit states.

---

#### Your Response Should:
1. **Start with a Title** summarizing the overall purpose of the PR.
1. **Start with a Title** summarizing the overall purpose of the PR.
2. **Follow with a structured Description** containing:
- A high-level summary.
- Grouped, clear lists of changes under emoji-enhanced markdown headers.
- Grouped, clear lists of final changes under emoji-enhanced markdown headers.
- Consolidated, meaningful contributions only β€” ignoring intermediate commits.

---

#### Example Output:

Title: πŸš€ Add multi-repository tracking and fix authentication issues
Title: πŸš€ Implement multi-repository tracking and enhance authentication

## πŸ“ Summary
This pull request introduces support for managing multiple repositories and resolves authentication issues affecting GitLab users.
This pull request introduces comprehensive multi-repository management and improves authentication stability and performance.

## ✨ Features
- Added support for tracking commits, pull requests, and issues across multiple repositories
- Implemented new API endpoints for repository management
- Implemented support for managing multiple repositories and their related resources
- Added endpoints for repository synchronization and metadata tracking

## 🐞 Bug Fixes
- Fixed authentication error preventing GitLab users from logging in
- Resolved issue with token expiration handling
- Fixed authentication token validation issues
- Resolved edge case errors during user login flow

## βš™οΈ Improvements
- Optimized release notes generation for better performance
- Improved UI responsiveness across dashboard components
- Enhanced error handling for repository sync jobs

## πŸ“š Documentation
- Added API documentation for new repository endpoints
- Updated README with setup instructions for multi-repo support

"""
- Added detailed API documentation for new endpoints
- Updated README with setup instructions for multi-repo configuration
"""
3 changes: 2 additions & 1 deletion app/git-recap/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
},
"dependencies": {
"gh-pages": "^6.3.0",
"html-to-image": "^1.11.11",
"lucide-react": "^0.487.0",
"pixel-retroui": "^2.0.0",
"react": "^19.0.0",
Expand All @@ -32,4 +33,4 @@
"typescript-eslint": "^8.24.1",
"vite": "^6.2.0"
}
}
}
Loading