Overview
Issue triaging is the process of reviewing, organizing, and prioritizing issues in the VS Code repository. This guide explains how the VS Code team manages issues and how contributors can help with the triaging process.While primarily aimed at maintainers and regular contributors, understanding the triaging process helps all contributors know what to expect when they file issues or submit pull requests.
Issue Lifecycle
Every issue goes through a series of stages from creation to resolution:Initial Triage
Team reviews the issue to:
- Verify it’s in the correct repository
- Check for duplicates
- Add appropriate labels
- Request more information if needed
Resolution
Issue is addressed through:
- Code fix (via PR)
- Documentation update
- Working as designed explanation
- Won’t fix decision
Issue Labels
VS Code uses a comprehensive labeling system to categorize and track issues:Type Labels
- Bug
- Feature Request
- Enhancement
- Question
bug - Something isn’t working correctlyBugs are prioritized based on:- Severity (data loss, crashes, functional issues)
- Impact (number of users affected)
- Workaround availability
Area Labels
Indicates which part of VS Code is affected:Editor Areas
Editor Areas
editor- Text editor coreeditor-autoclosing- Auto-closing of brackets/quoteseditor-code-actions- Quick fixes and refactoringseditor-color-picker- Color picker widgeteditor-find- Find and replaceeditor-folding- Code foldingeditor-hover- Hover tooltipsintellisense- Code completionminimap- Minimap view
Workbench Areas
Workbench Areas
workbench- VS Code UI shellworkbench-cli- Command line interfaceworkbench-debug- Debug functionalityworkbench-editor-grid- Editor layoutworkbench-extensions- Extension managementworkbench-files- File explorerworkbench-integrated-terminal- Built-in terminalworkbench-search- Search functionalityworkbench-settings- Settings UIworkbench-tabs- Editor tabs
Language & Extension Areas
Language & Extension Areas
languages-basic- Basic language supportlanguages-diagnostics- Error/warning squigglestypescript- TypeScript/JavaScriptjson- JSON supportmarkdown- Markdown supportextensions- Extension APIextension-host- Extension runtime
Platform Areas
Platform Areas
api- Extension APIelectron- Electron shellkeybindings- Keyboard shortcutsthemes- Color themesL10N- Localization/translationsperformance- Performance issuesaccessibility- Accessibility
Status Labels
- Needs Info
- Needs Investigation
- Verified
- Milestone
info-needed - More information required from reporterPriority Labels
Important
Important
important - High priority, should be addressed soonIssues affecting many users or core functionality.Help Wanted
Help Wanted
help-wanted - Team welcomes community contributionsGood First Issue
Good First Issue
good-first-issue - Suitable for first-time contributorsRelatively simple issues that are well-defined and don’t require deep codebase knowledge.Automated Issue Management
VS Code uses GitHub Actions to help manage the large volume of issues:Automated Actions
- Info Needed Closure
- Issue Locking
- Feature Request Pipeline
- Duplicate Detection
Auto-closes issues marked
info-needed after 7 days with no response.If you believe the bot made a mistake, open a new issue explaining the situation and referencing the affected issue.
Feature Request Pipeline
Feature requests follow a specific process to ensure community input:1. Under Discussion
New feature request is opened and labeled
feature-request.Community can:- Vote with 👍 reactions
- Discuss use cases
- Propose alternatives
2. Team Review
After sufficient discussion, team reviews:
- Alignment with VS Code vision
- Feasibility
- Community interest
- Potential implementation approach
3. Backlog or Planning
If approved:
- Added to backlog
- May be assigned to a milestone
- Team or community can implement
- Closed with explanation
- May suggest alternatives
4. Implementation
Once scheduled:
- Issue assigned to milestone
- Work begins (team or contributor)
- PR submitted and reviewed
How to Help with Triaging
Community members can help with issue triaging:Reproducing Issues
Verify Bug Reports
Verify Bug Reports
Help confirm bugs by:
- Following reproduction steps in the issue
- Testing on your system (note your OS/version)
- Commenting with results:
- Providing additional info like screenshots or videos
Identifying Duplicates
Find Duplicate Issues
Find Duplicate Issues
Before filing an issue (or after you spot a new one):
- Search existing issues for similar problems
- Check closed issues - might have been fixed or rejected
- Comment with links if you find duplicates:
- Don’t close or label - let maintainers confirm
Providing Additional Context
Add Helpful Information
Add Helpful Information
If you encounter the same issue:
- Add your use case - different perspectives help
- Share workarounds if you’ve found any
- Provide code samples that demonstrate the issue
- Note related issues that might be connected
Answering Questions
Help Other Users
Help Other Users
If you know the answer to someone’s question:
- Provide clear answers with examples
- Link to relevant docs or issues
- Suggest workarounds if no direct solution exists
- Direct to Stack Overflow for general questions
Issue Tracking Workflow
For Reporters
What to expect when you file an issue:Bot Analysis
Automated system:
- Checks for similar issues
- May request additional info
- Suggests related documentation
Investigation
If it’s a bug:
- Team attempts to reproduce
- May request more details
- Identifies root cause
Be patient - the team manages thousands of issues. Response times vary based on severity and impact.
For Contributors
Looking for issues to work on?- Good First Issues
- Help Wanted
- By Area
Filter for
good-first-issue label:View Good First IssuesThese are:- Well-defined
- Limited scope
- Don’t require deep codebase knowledge
Best Practices for Issue Reporters
Writing Effective Bug Reports
Use the Issue Template
Use the Issue Template
The template exists for a reason - it ensures you provide all necessary information:
- VS Code version
- Operating system
- Reproduction steps
- Expected vs actual behavior
One Issue Per Report
One Issue Per Report
Don’t combine multiple unrelated bugs or feature requests:✅ Good: “File explorer crashes when renaming folders with special characters”❌ Bad: “File explorer crashes, terminal font is wrong, and I’d like a new theme”
Search First
Search First
Before creating a new issue:
- Search open issues
- Check closed issues
- Review popular feature requests
Provide Minimal Reproduction
Provide Minimal Reproduction
Simplify the reproduction case:
Include Visual Evidence
Include Visual Evidence
For UI issues, include:
- Screenshots showing the problem
- GIFs/videos demonstrating the issue
- Before/after comparisons
Responding to Triage
When team members request information:Understanding Issue Closure
Issues may be closed for various reasons:- Fixed
- Duplicate
- Working as Designed
- Won't Fix
- No Response
- Caused by Extension
Issue resolved in a merged PR.Check the linked PR and milestone to see when the fix will ship.
Closed doesn’t mean rejected. Many issues are closed as duplicates of other open issues, or are closed when fixed and scheduled for a future release.
Resources
Issue Tracking Wiki
Detailed issue workflow
Feedback Channels
Where to provide feedback
Related Projects
VS Code ecosystem repos
How to Contribute
Getting started guide
Questions?
If you have questions about issue triaging:- Review the Issue Tracking wiki
- Ask on Stack Overflow
- Join the VS Code Dev Community