Skip to content

Issue Conventions

Bora Toprak Temir edited this page Mar 26, 2025 · 4 revisions

Overview

This document defines the conventions for creating and managing issues in our GitHub repository to ensure consistency, clarity, and efficient collaboration.

Issue Naming Convention

Each issue title should follow this format:

[Category] Brief Description

Example Titles:

  • [Bug] Fix crash when saving user settings
  • [Feature] Add dark mode support
  • [Enhancement] Optimize database query performance
  • [Task] Refactor authentication module

Labels

Labels help categorize issues based on priority, type, and scope. The following labels are used in our project:

Priority Labels:

  • pr:low – Low priority; can be addressed later.
  • pr:high – High priority; should be tackled soon.
  • pr:urgent – Urgent priority; requires immediate attention.

Type Labels:

  • bug – An issue related to a bug in the system.
  • feature – A request for a new feature.
  • enhancement – Improvements to an existing feature.
  • task – General tasks that need to be done.
  • documentation – Issues related to updating documentation.
  • question – Clarifications or inquiries related to the project.
  • research – Subjects that must be researched.

Issue Description Template

Every issue should follow a structured format for better readability and understanding. Use the following template:

### Description
A clear and concise description of the issue.

### Steps to Reproduce (For Bugs)
1. Step 1
2. Step 2
3. Step 3

### Expected Behavior (For Bugs)
Describe what should happen.

### Actual Behavior (For Bugs)
Describe what actually happens.

### Proposed Solution (If Applicable) (For Bugs)
Provide any suggested fixes or improvements.

### Priority
Label the issue with `pr:low`, `pr:high`, or `pr:urgent`.

### Deadline
Determine the appropriate date for the deadline.  
The deadline should give enough time to let the assigned  
member finish the issue, but also ideally should be earlier  
than the latest possible time to allow for reviews and extensions.

### Additional Context (If required)
Add any other context, logs, or screenshots related to the issue.

Issue Workflow

  1. Create Issue: Follow the naming convention and issue description format.
  2. Label Issue: Assign appropriate labels type, expected time and priority.
  3. Determine Deadline: Set an appropriate deadline, as detailed in the issue description template.
  4. Assign Issue: The issue should be assigned to a responsible team member.
  5. Discussion & Review: Team members can discuss possible solutions.
  6. Implementation: The issue is worked on and linked to a corresponding PR.
  7. Testing & Verification: Ensure the issue is resolved before closing.
  8. Close Issue: Close the issue once it's verified.

Closing Issues Automatically

To automatically close issues when a related PR (pull request) is merged, use one of the following keywords in the PR description:

Fixes #issue_number
Closes #issue_number
Resolves #issue_number

Example:

This PR fixes #123 by refactoring the authentication module.

References

Clone this wiki locally