Skip to content
Snippets Groups Projects
README.md 3.08 KiB
Newer Older
  • Learn to ignore specific revisions
  • # Ticket workflow
    
    Newly created issues need to be evaluated and labeled. The labels have different categories: Status, Component, Area and Type. The aim is to apply one label of each category.
    
    ## Status
    
    The status displays the progress the ticket has made from the report to completion.
    
    ### Need triage
    
    Created issues have no label at all. We have a bot which adds the label `Status: Needs triage`. Issues under this label need to be labeled accordingly with their component, area and type.
    
    ### input wanted
    
    Sometimes created issues lack important information needed to solve the problem or implement the enhancement or new feature. If this is the case, the label `status: input wanted` needs to be applied.
    
    ### Blocked
    
    If issues are blocked by external circumstances and we need to wait until we can make progress, the we should apply the label `Status: Blocked`.
    
    ### Needs reproduction
    
    In order to evaluate if a reported problem is a bug or not, it should be reproduced. If this is not done yet, the label `Status: Needs reproduction` has to be assigned.
    
    ### Draft
    
    
    petitminion's avatar
    petitminion committed
    New features or deep changes need to be discussed in the community. To mark this phase the label `Status: Draft` can be used. Additionally a discussion on https://forum.funkwhale.audio should be started and probably linked in the issue.
    
    
    ### Needs design
    
    When a feature is fully described but still needs design to access it in a proper way, this label can be assigned so people wanting to help with designing can find them.
    
    ### Ready
    
    If a ticket is ready for implementation, it gets the label `Status: Ready` and can considered when planning the next milestone.
    
    ### Review wanted
    
    Merge Requests which are fully implemented but need a Review can be tagged accordingly.
    
    ## Type
    
    ### Bug
    
    All issues that are considered a mistake in the behavior of our software are considered as bug reports and labeled with `Type: Bug`.
    
    ### Accessibility
    
    All issues adding unjustifiable barriers to use Funkwhale are labeled using `Type: Accessibility`.
    
    ### Enhancement
    
    Tickets covering suggestions to enhance a feature in any way are labeled with `Type: Enhancement`.
    
    ### New feature
    
    Tickets with suggestions to add new functionality are labeled with `Type: New feature`.
    
    ### Support
    
    Someone needs help to setup, update or use Funkwhale. These issues are labeled with `Type: Support`. _Support is probably better placed in the forums or the chat and not in the issue tracker?_
    
    ### Epic
    
    If issues are too big to be handled in one work package, they should be split into several smaller tickets. They can be linked in their parent issue, which gets the label "Type: Epic".
    
    ### Duplicate
    
    Issues which get closed because they are duplicates should be labeled that way so if someone hits that issue from a search engine, they immediately see what's going on.
    
    ## Component
    
    Components are different parts of the application from a user perspective. Issues probably belong to several components at the same time.
    
    ## Area
    
    Areas are distinguished on a technical level. This is not only about the application itself but also covers our build chain and different deployment methods.