Issue Workflow Guidelines#

This document defines the standard lifecycle for Issues in the vLLM Ascend project — from creation through triage, active handling, and final closure. It establishes consistent label usage, owner assignment, and communication expectations to ensure smooth collaboration between contributors and maintainers.

1. Label Categories#

1.1 Status Labels#

These labels track where an issue stands in the workflow.

Label

Description

triage review

Newly filed or unseen issue awaiting initial assessment by a maintainer

triaged

Assessment complete; type, priority, and module have been determined

wait-feedback

Blocked on an external dependency or awaiting a response before work can proceed

resolved

Issue has been closed — either via a merged PR, or through non-code resolution (e.g., answered question, configuration guidance)

stale

No activity for an extended period; parties have been notified and the issue will be auto-closed if there is no response

duplicated

A duplicate of an existing open issue or merged PR

invalid

The issue report is invalid, unclear, or not reproducible

wontfix

The issue will not be addressed; as this issue is out of scope, unviable, or intentionally ignored for the foreseeable future

1.2 Type Labels#

These labels describe the nature of the issue.

Label

Description

feature request

Request for new functionality

RFC

Request for Comments — significant architectural or design change requiring community discussion

new model

Request to add support for a new model on Ascend NPU

usage

A usage question; no code change may be required

question

A general question; no code change may be required

documentation

Improvements or corrections to documentation

installation

Issues related to setup and deployment

performance

Performance regression, bottleneck, or optimization request

bug

Something is not working correctly or behaves unexpectedly

1.3 Priority Labels (Optional)#

Label

Description

high

High priority; should be resolved in the current or next cycle

medium

Normal priority; handled in the regular development flow

low

Low priority; edge case or minor issue that can be deferred

1.4 Contribution Labels (Optional)#

Label

Description

good first issue

A well-scoped, low-complexity task suitable for new contributors

help wanted

Community contributions are welcome and encouraged

2. Workflow#

issue_label_workflow

Phase 1 — First Response#

When an issue is first picked up by the on-call maintainer:

  • Apply triaged to signal that the issue can be classified and Add the relevant module label so the issue can be routed to the appropriate module maintainer for detailed triage.

  • Apply triage review to signal that the issue requires more review and specitfic analysis before classification.

Phase 2 — Triage and Analysis#

After a thorough review of the issue content:

  • Verify and apply the appropriate issue type label (bug, feature request, RFC, question, documentation, installation, performance, new model, etc.).

  • Handle terminal states:

    • For duplicates, apply the duplicated label, provide an explanation and a link to the existing issue or PR. If there are no further questions, close the issue.

    • For invalid reports, provide an explanation, apply the invalid and resolved label, and close the issue. The issue creator can comment or request to reopen if they have further questions.

  • Optionally apply a priority label (high, medium, or low).

  • If community contributions are welcome, apply help wanted. For well-scoped beginner-friendly tasks, also apply good first issue.

  • Assign the issue owner and replace triage review with triaged to indicate that triage is complete.

Phase 3 — Closure#

After triage, the issue moves into tracking and implementation:

  • Keep the issue in progress until it is resolved through a merged PR or another confirmed resolution path.

  • Once the issue is resolved, apply resolved and close it, ideally with a reference to the merged PR or a short explanation of the resolution.

  • If the issue remains inactive for an extended period, apply stale as the final state before auto-closure.