Ticket Detection
The Problem
Ever opened a PR and wondered “what ticket is this even for?” Then spent 10 minutes hunting through JIRA, Linear, or GitHub issues trying to understand the context?
Context switching kills productivity. When tickets are buried in commit messages or scattered across tools, reviewers waste time searching instead of reviewing.
The Solution
lazyPR automatically detects ticket IDs from:
- PR titles (e.g., “Fix authentication PROJ-123”)
- PR descriptions (e.g., “This addresses #456”)
- Commit messages (e.g., “TICKET-789: Update docs”)
Then surfaces them as clickable links directly in the PR summary.
Supported Ticket Types
| Platform | Pattern | Example |
|---|---|---|
| JIRA | [A-Z]+-\d+ | PROJ-123, TICKET-4567 |
| GitHub Issues | #\d+ | #123, #4567 |
| Linear | [A-Z]+-\d+ | ENG-789, TEAM-001 |
| Custom | User-defined regex | Any pattern you specify |
Usage
Enable ticket detection in your workflow:
- uses: elvis-ndubuisi/lazypr@v1
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
api_key: ${{ secrets.OPENAI_API_KEY }}
ticket_pattern: "PROJ-[0-9]+" # Optional: custom regex
ticket_url_template: "https://jira.company.com/browse/{{id}}"
Configuration Options
ticket_pattern (optional)
- Custom regex for your ticket format
- Default:
[A-Z]+-\d+(catches most JIRA/Linear formats)
ticket_url_template (optional)
- URL template with
{{id}}placeholder - Converts ticket IDs to clickable links
Output
Detected tickets appear in the PR summary:
### 🎫 Related Tickets
- [PROJ-123](https://jira.company.com/PROJ-123) (Jira)
- [#456](https://github.com/owner/repo/issues/456) (GitHub)
- [ENG-789](https://linear.app/acme/issue/ENG-789) (Linear)
Template placeholder: Use {{relatedTickets}} in custom templates.
Key Benefits
- Zero context switching - Tickets linked automatically
- Multi-source detection - Scans title, body, and all commits
- Deduplication - Same ticket mentioned multiple times? Only shown once
- Flexible patterns - Works with any project management tool
Stop hunting, start reviewing. See custom templates to customize ticket display.