Skip to content

Allow iterationCadenceId as issue filter

In order to filter a board for a Current iteration within a cadence, we need to pass the iterationCadenceId to issues filters.

Example response of a board with current iteration within cadence in board scope:

[
  {
    "data": {
      "workspace": {
        "board": {
          "__typename": "Board",
          "id": "gid://gitlab/Board/33",
          "name": "Filtered board",
          "hideBacklogList": false,
          "hideClosedList": false,
          "assignee": null,
          "milestone": {
            "id": "gid://gitlab/Timebox::TimeboxStruct/-1",
            "title": "Any Milestone",
            "__typename": "Milestone"
          },
          "labels": {
            "nodes": [],
            "__typename": "LabelConnection"
          },
          "iteration": {
            "__typename": "Iteration",
            "id": "gid://gitlab/Timebox::TimeboxStruct/-4",
            "title": "Current"
          },
          "iterationCadence": {
            "id": "gid://gitlab/Iterations::Cadence/3",
            "title": "Cadence 1",
            "durationInWeeks": 1,
            "__typename": "IterationCadence"
          },
          "weight": -1
        },
        "__typename": "Group"
      }
    }
  }
]

FYI: Related to #344779 (closed) as the iteration ID should be gid://gitlab/Iterationt/-4 instead of gid://gitlab/Timebox::TimeboxStruct/-4

We'd need the BoardList request to look something like this in such a use case:

query {
  boardList(id: "gid://gitlab/List/277",
  issueFilters: { iterationWildcardId: "CURRENT", iterationCadenceId: "gid://gitlab/Iterations::Cadence/3"} ){
    issues 
  }
}

Related to #323653 (closed).