fix(group_boards): return the single updated list from UpdateIssueBoardList
What does this MR do?
GroupIssueBoardsService.UpdateIssueBoardList declares []*BoardList as its return type, but GitLab returns the updated list as a single JSON object (API docs: Edit group issue board list):
{
"id" : 1,
"label" : { "name" : "Testing", "color" : "#F0AD4E", "description" : null },
"position" : 1
}As a result every successful call fails to decode:
json: cannot unmarshal object into Go value of type []*gitlab.BoardListreproduced against a current gitlab-ee:latest instance (PUT /api/v4/groups/:id/boards/:board_id/lists/:list_id). The project-level counterpart, IssueBoardsService.UpdateIssueBoardList, already returns *BoardList.
This MR aligns the group-level method with the API and its project-level sibling:
- interface + implementation return
*BoardList(do[*BoardList]) - the test fixture is updated — it mocked the array shape the API never returns, which is how the mismatch survived !1254 (merged)
- the generated mock is regenerated
On the signature change: since the current signature can never decode a successful response, no caller can depend on it working — the method has been effectively unusable.
Context
Found end-to-end while extending the e2e suite of gitlab-mcp-server, an MCP server that exposes the GitLab API (client-go-backed) to AI assistants — its group_board_list_update tool hit this on a live EE instance.