Optimize work item list query to fetch only necessary data

Goal

Ensure we only query the necessary data on the work item list page to improve performance and reduce unnecessary data fetching.

Context

Currently, the work item list query includes several widgets that are not displayed in the list view. For example, the list query defines these widgets:

onlyTypes: [
  ASSIGNEES
  AWARD_EMOJI
  MILESTONE
  START_AND_DUE_DATE
  TIME_TRACKING
  LINKED_ITEMS
  DEVELOPMENT
  HIERARCHY
]

However, not all of these widgets are used to display data in the list metadata. Some widgets like DEVELOPMENT and TIME_TRACKING are not shown anywhere in the list view.

Proposal

Create a separate fragment for work item features field specifically for work item lists that omits the unnecessary fields. This will:

  • Reduce the amount of data fetched from the GraphQL API
  • Improve list page performance
  • Keep the query focused on only the data needed for the list view

Example

The current list query includes data that isn't displayed, as shown in the work item list metadata. We should optimize this to only include the widgets that are actually used in the list view.

Edited by 🤖 GitLab Bot 🤖