Get one row per work item type
A board over work that never reaches a backlog mixes support requests, feedback and impediments in every column. The states are shared, but the three are not read the same way. One row per type separates them without changing the query.
Before you start
A named board in the AnyKanban hub, and the reference name of the field whose
values you want as rows. The demo board over types outside the backlog uses
System.WorkItemType. Named lanes win over this setting, so the Swimlanes
tab must have no named lanes for it to take effect.
Steps
- Open the board and select Settings.
- Open the Swimlanes tab.
- Delete any named lanes above, because while one exists the field below is ignored.
- Type the reference name into Lane field (single-select, empty means off).
- Select Save.
What you should see
One row per distinct value found among the loaded items, in alphabetical order: on the demo board that is Feedback, Impediment and Support Request. Each row carries a chevron, the value as its name and a count, and repeats the full set of columns. Items whose field is empty are collected in a (no lane) row, which comes after the rows for the values.
Rows come from the data, not from a list you maintain: a value that no loaded item carries has no row, and a new value produces one the moment an item carrying it shows up. Clearing the box turns swimlanes off again.

Notes
Dragging a card from one row into another writes that row's value into the
lane field, so choose a field that is meant to be edited from a board. On the
demo board that field is the work item type, so a drag between rows there asks
Azure DevOps to change the item's type. A drop into the (no lane) row
writes an empty value. Two kinds of field are never written by a drag: a
people field such as Assigned To, and System.Parent. With either one as the
lane field, the other rows are dimmed while a card is in the air, and releasing
it there cancels the move: the field stays as it was, the card stays in its own
row, and nothing else on the item changes. While a card is in the air, every
empty cell it may enter opens into a dashed slot one card high, and a drop into
an empty cell writes the lane field, and the state when the cell is in another
column, but never the order: the card keeps its place. If the server refuses the write, and some fields are not
writable, the card returns to its row with the server's own message.
The count in a row header is every loaded item in that row, which includes items in removed states and items sitting in Unmapped; on the demo board the two impediments are in state Open, which the board's own type does not have, so they appear under Unmapped inside their row.