Skip to content

Proposal: Weighted Issues #32071

Open
@maantje

Description

@maantje

Introduce the ability to assign weights to issues, allowing teams to prioritize and allocate work based on effort. This feature would enhance project management capabilities by enabling better planning and tracking within projects.

Currently, Gitea issues lack the ability to assign weight or effort to an issue. This limitation makes it difficult for teams to:

  • Estimate the time and effort needed to complete different tasks.
  • Balance workload distribution across team members and milestones.

Mentions:

Proposed Solution:

Add an opt-in feature to Gitea Issues allowing users to assign a weight to each issue. This weight would represent the effort of the issue. Key features of this proposal include:

  • Adding Opt-in Configuration Option
    The following configuration options will control the weight feature, allowing users to opt into using weighted issues.

    ENABLE_ISSUE_WEIGHT: false       # Enable/Disable weight feature
    DEFAULT_ENABLE_ISSUE_WEIGHT: true # Default enable/disable weight feature during repository creation
  • Adding Weight to Issues:
    Users can assign weights to issues directly upon creation from the issue sidebar. This allows quick assignment of effort to tasks without navigating away from the issue creation page.

  • Editing Weights:
    Weights can be updated at any point during issue edits, with the weight field being easily accessible from the sidebar in the issue details view.

  • Weight Change Tracking:
    Automatic comments are generated for weight-related changes, documenting the addition, modification, or removal of weights.

  • Milestone Weight Progress:
    Milestones display total weight for all associated issues. Progress bars are based on the sum of weights rather than just issue counts, providing a clearer view of the actual effort remaining.

  • Project Board Integration:
    On project boards, issues display their weight, and columns show the total weight of issues within them, allowing teams to balance workloads effectively. Filters help further refine issue distribution across the board.

I made a basic proof of concept, visible here, to get familiar with the codebase and assess the complexity of implementing the necessary changes.

Screenshots

Issue

Screenshot 2024-09-18 at 18 36 52

Screenshot 2024-09-18 at 18 37 24

Screenshot 2024-09-18 at 18 38 57

Screenshot 2024-09-18 at 18 39 07

Screenshot 2024-09-18 at 18 39 43

Milestone

Screenshot 2024-09-18 at 18 49 33

Screenshot 2024-09-18 at 18 50 52

Project

Screenshot 2024-09-18 at 18 53 28

Screenshot 2024-09-18 at 18 55 11

Metadata

Metadata

Assignees

No one assigned

    Labels

    type/proposalThe new feature has not been accepted yet but needs to be discussed first.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions