Skip to content

Add rollup summary progress and health status to child items widget on Issue WIT

Release notes

You can now track progress and health status of issues directly from the child items widget giving you a status overview at a glance. This enhancement provides real-time visibility into potential bottlenecks when work is already in progress, helping product and engineering managers quickly identify at-risk items and make timely adjustments before sprint deadlines are threatened.

Summary

At GitLab, we support a hierarchical planning structure where work can be broken down from Epics -> Issues -> Tasks. Issues and Tasks can be weighted to represent complexity or effort. Currently, Epics show a rolled-up progress indicator and health status that helps users track completion progress and health of all child items. However, Issues lack this same visibility despite having weighted child tasks.

By adding rolled-up values to the child widget on Issues:

  • Teams can better track progress of complex issues broken down into tasks
  • Creates consistent behavior between Epics and Issues for progress tracking
  • Provides immediate visual feedback on issue completion status without having to manually calculate task progress
  • Helps engineering managers and product managers make informed decisions about resource allocation and sprint planning
  • Enables teams to quickly assess the overall health of complex issues through aggregated health status of child tasks

Current child widget UI

Epic Issue
Screenshot_2025-02-23_at_3.02.18_p.m.

Proposal

The below information has been taken from this (internal) slack thread:

To fix this, you would likely need to:

  1. Set rollUp: true in the widgetDefinition for issues
    • This is currently set to false
  2. Ensure the backend logic that calculates rolledUpWeight and rolledUpCompletedWeight is handling the task -> issue rollup path, not just the issue -> epic path
  3. Enable health status rollup calculations for issues similar to epics
    • This is currently implemented for epics as shown in the health indicator in the UI screenshot

⚠️ Data migrations needed:

  1. Update rollUp: true in the widgetDefinition for issues
  2. To expose health status rollups for issues WIT

Acceptance Criteria

Feature Requirements

  1. Issue detail page shows the same rollup progress widget that epics have
  2. The widget appears in the same location as the epic implementation
  3. The rollup calculation uses the existing backend logic, enabled for issue work item type
  4. Issue detail page shows aggregated health status from child tasks
  5. Health status indicator appears in the same location as the epic implementation

Documentation Requirements

  1. Add documentation for Issue progress and health status tracking at appropriate location in GitLab docs
    • Document how to view and interpret the rollup progress indicator
    • Document how to view and interpret the health status summary
    • Follow similar structure to existing epic progress docs and epic health status docs

Test Cases

See more
  1. Basic rollup visibility:
    • Create an issue with weighted tasks
    • Verify rollup progress appears matching epic's UI pattern
    • Verify values match existing calculation logic
  2. Widget behavior verification:
    • Create a new issue, verify widget appears
    • Remove all tasks, verify widget handling matches epic behavior
    • Add tasks back, verify widget reappears
  3. Health status rollup verification:
    • Create an issue with multiple tasks
    • Set different health statuses on tasks
    • Verify health status rollup appears and matches epic's aggregation logic
    • Update task health statuses, verify rollup updates accordingly
    • Remove all tasks, verify health indicator handling matches epic behavior
  4. Migration verification:
    • Existing issues with weighted tasks show rollup progress after migration
    • Existing issues with tasks show health status rollups after migration
    • Verify no disruption to existing epic rollup functionality

Additional Reference

  1. Related implementations:
  2. Related docs:
Current child widget code
Epic Issue
Screenshot_2025-02-23_at_4.01.54_p.m. Screenshot_2025-02-23_at_4.01.45_p.m.
Edited by 🤖 GitLab Bot 🤖