Issue Labels Guide #4
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
🏷️ Issue Labels Guide
Understanding How We Organize and Track Work
📖 What Are Labels?
Labels are like colorful tags or stickers we attach to issues to quickly
identify:
etc.)
etc.)
etc.)
Think of labels like organizing files in folders -- they help us
find things quickly and understand what needs attention!
Area Labels
Which part of the system does this affect?
area/api-doc
What it means: Tasks related to API documentation, Swagger, OpenAPI,
or technical documentation.
💡 Simple Explanation:
Like writing an instruction manual for developers on how to use our
system's features.
📝 Example:
"Update the documentation for the new login API endpoint"
area/backend
What it means: Server-side development, APIs, authentication, and
business logic.
💡 Simple Explanation:
The "behind the scenes" work -- like the kitchen in a restaurant where
food is prepared, but customers don't see it.
📝 Example:
"Fix the password reset email sending logic"
area/database
What it means: Database design, schema changes, migrations, and
query optimization.
💡 Simple Explanation:
Like organizing a massive filing cabinet where all the data is stored --
making sure it's structured well and fast to access.
📝 Example:
"Add a new column to store user birth dates"
area/devops
What it means: CI/CD pipelines, automation scripts, deployment
workflows.
💡 Simple Explanation:
Like an automated assembly line that tests and delivers new features to
customers automatically.
📝 Example:
"Set up automated testing to run before every deployment"
area/infra
What it means: Servers, cloud resources, networking, and
infrastructure setup.
💡 Simple Explanation:
The foundation -- like the building, electricity, and plumbing that a
restaurant needs to operate.
📝 Example:
"Upgrade server memory from 8GB to 16GB"
area/integration
What it means: Integration with external APIs, third-party services,
or internal systems.
💡 Simple Explanation:
Connecting to other services -- like a restaurant using a third-party
delivery app (Uber Eats) instead of their own drivers.
📝 Example:
"Connect our app to Stripe for payment processing"
area/ui
What it means: Frontend or client-side development and UI
implementation.
💡 Simple Explanation:
What users see and interact with -- like the dining room and menu in a
restaurant.
📝 Example:
"Make the login button bigger and more visible"
area/ux
What it means: User experience design, usability improvements, and
design validation.
💡 Simple Explanation:
How easy and pleasant it is to use -- like making sure a restaurant's
layout flows well and customers don't get confused.
📝 Example:
"Simplify the checkout process from 5 steps to 3 steps"
Priority Labels
How urgent is this issue?
priority/critical
What it means: Must be addressed immediately --- blocking progress
or causing outages.
💡 Simple Explanation:
Like a fire alarm -- drop everything and deal with this NOW! The system
might be down or users can't work.
📝 Example:
"Website is completely down -- no one can access it!"
priority/high
What it means: Important and urgent --- should be completed as soon
as possible.
💡 Simple Explanation:
Very important but not quite an emergency -- like a broken AC in summer.
Uncomfortable and needs fixing soon.
📝 Example:
"Payment processing is 50% slower than normal"
priority/medium
What it means: Important but not urgent --- planned in upcoming
sprints.
💡 Simple Explanation:
Needs to be done but there's time to plan -- like scheduling a dentist
appointment.
📝 Example:
"Add dark mode feature to the app"
priority/low
What it means: Nice-to-have improvements --- can be scheduled later.
💡 Simple Explanation:
Would be nice but not necessary -- like adding a fountain to your
garden. Do it when you have extra time.
📝 Example:
"Change the shade of blue in the logo"
Type Labels
What kind of work is this?
type/bug
What it means: A defect or unintended behavior that needs fixing.
💡 Simple Explanation:
Something is broken -- like a car door that won't close properly. It
worked before, now it doesn't.
📝 Example:
"Users can't reset their password -- the reset link doesn't work"
type/feature
What it means: A new functionality or capability added to the
product.
💡 Simple Explanation:
Building something completely new -- like adding a sunroof to a car that
never had one.
📝 Example:
"Add ability for users to upload profile pictures"
type/enhancement
What it means: Improvements or upgrades to existing features.
💡 Simple Explanation:
Making something that already exists better -- like upgrading from a
regular TV to a 4K TV.
📝 Example:
"Make the search function faster and show results while you type"
type/task
What it means: General development, operational, or maintenance
task.
💡 Simple Explanation:
Regular maintenance work -- like changing the oil in your car or
cleaning the gutters.
📝 Example:
"Update all dependencies to latest versions"
type/user-story
What it means: Feature request written from end-user perspective.
💡 Simple Explanation:
Written from the user's point of view: "As a user, I want to... so
that I can..."
📝 Example:
"As a teacher, I want to export grades to Excel so I can share them
with parents"
type/r&d
What it means: Research, experiments, or proof-of-concept tasks.
💡 Simple Explanation:
Exploring new ideas -- like a chef testing new recipes before adding
them to the menu.
📝 Example:
"Research whether AI can help categorize customer feedback
automatically"
type/support
What it means: Customer support, production issues, or operational
assistance.
💡 Simple Explanation:
Helping users with problems or questions -- like a customer service desk
at a store.
📝 Example:
"User can't figure out how to change their email address"
Status Labels
Where is this issue in the workflow?
status/backlog
What it means: Collected but not yet reviewed or prioritized.
💡 Simple Explanation:
In the waiting room -- ideas that arrived but haven't been sorted yet.
status/todo
What it means: Approved and ready to be picked for development.
💡 Simple Explanation:
Ready to start -- like items on your to-do list that you can begin
anytime.
status/in-progress
What it means: Currently under active development.
💡 Simple Explanation:
Work is happening right now -- someone is actively working on this.
status/dev-completed
What it means: Development finished, pending review.
💡 Simple Explanation:
Developer finished -- now waiting for someone to check their work.
status/ready-for-testing
What it means: Approved build ready for QA testing.
💡 Simple Explanation:
Ready for quality check -- waiting for testers to try it out.
status/in-testing
What it means: QA team actively testing the feature or fix.
💡 Simple Explanation:
Being tested now -- quality assurance team is checking it thoroughly.
status/blocked
What it means: Cannot proceed due to dependency or external blocker.
💡 Simple Explanation:
Stuck! Can't move forward until something else is resolved first.
status/on-hold
What it means: Paused temporarily awaiting decision or
clarification.
💡 Simple Explanation:
On pause -- temporarily stopped while we wait for answers or decisions.
status/reopened
What it means: Previously closed item reopened due to unresolved
issue.
💡 Simple Explanation:
Came back! We thought it was done, but the problem returned.
🧪
Testing Labels
What kind of testing is needed?
testing/manual
What it means: Requires manual testing by QA or developer.
💡 Simple Explanation:
A person needs to physically test this -- like taste-testing food before
serving it.
testing/automation
What it means: Requires automated test coverage.
💡 Simple Explanation:
Write computer programs to test this automatically -- like a robot that
tests features repeatedly.
testing/api
What it means: Requires backend or API testing.
💡 Simple Explanation:
Test the behind-the-scenes connections -- like testing if the kitchen
gets the order correctly.
testing/regression
What it means: Needs regression testing to ensure no existing
features broke.
💡 Simple Explanation:
Make sure we didn't break anything else -- like checking all the other
lights still work after fixing one.
testing/passed
What it means: Testing completed successfully.
💡 Simple Explanation:
Success! Everything works as expected. ✅
testing/failed
What it means: Testing failed and requires fixes.
💡 Simple Explanation:
Didn't work! Problems were found that need to be fixed. ❌
testing/testcase
What it means: Individual test case created to verify specific
behavior.
💡 Simple Explanation:
A specific test scenario -- like "try logging in with wrong password
and see what happens."
Issue Management Labels
Special situations and metadata
duplicate
What it means: This issue is a duplicate of another existing issue.
💡 Simple Explanation:
Already reported! Someone else submitted this same issue earlier.
wontfix
What it means: Will not be worked on -- doesn't align with project
goals, or intentionally left as-is.
💡 Simple Explanation:
We've decided not to do this -- it's out of scope or working as
intended.
invalid
What it means: Not a valid issue or insufficient justification.
💡 Simple Explanation:
Not actually an issue -- might be a misunderstanding or incorrect
report.
needs-information
What it means: More details or clarification required.
💡 Simple Explanation:
We need more information before we can work on this -- missing details.
help-wanted
What it means: Extra help or attention needed.
💡 Simple Explanation:
This is tricky or time-consuming -- looking for someone with extra time
or expertise.
breaking-change
What it means: Change that breaks backward compatibility.
💡 Simple Explanation:
This change might break things that currently work -- like changing
electrical outlets so old plugs don't fit.
security
What it means: Security vulnerability or security-related
improvement.
💡 Simple Explanation:
Related to protecting data and preventing hackers -- like fixing locks
or adding an alarm system.
documentation
What it means: Missing, outdated, or improved documentation.
💡 Simple Explanation:
Related to instruction manuals, guides, or help pages -- making sure
info is clear and up-to-date.
💡 Quick Tips for Using Labels
🎯 "" Labels: Some labels have "" badges. This
means an issue can only have ONE label from that category. For example,
you can't mark something as both priority/critical AND priority/low --
pick one!
🏷️ Combine Labels: Most issues will have multiple labels from
different categories. Example: An issue might be
area/ui+priority/high+type/bug+status/in-progress.🔍 Search by Labels: You can filter issues by labels to quickly find
what you're looking for. Want to see all critical bugs? Filter by
priority/critical+type/bug.📊 Track Progress: Status labels show where work is in the pipeline.
Looking at status labels tells you what's being worked on, what's
waiting, and what's done.
🚨 Pay Attention to Red: Red labels (critical, blocked, security,
testing/failed) mean something urgent needs attention!
✅ Green Means Go: Green labels (type/feature, status/in-progress,
testing/passed) indicate active work or successful completion.
💬 Add Comments: Labels are great, but always add comments to
explain context, blockers, or updates. Labels show "what" -- comments
explain "why."
🔄 Update Labels: As issues move through the workflow, update their
status labels. Don't leave an issue as "in-progress" when it's
actually done!
🎨 Color Quick Reference
Labels are color-coded to help you identify them at a glance:
Light Blue = Area labels
Red = Critical priority
Orange = High priority
Dark Red = Bugs
Green = Features
Dark Green = In Progress
Yellow = Todo status
Gold = Testing labels
Bright Green = Passed
Bright Red = Failed
Deep Red = Blocked
Crimson = Security
Remember!
Labels are tools to help us stay organized. They make it easy to see
what's happening, who's responsible, and what needs attention.
When in doubt, ask your Tech Lead which labels to use! They'll help
you label issues correctly.