Let users add custom incident list columns from tags
It is desirable for a user to be able to configure additional columns to show in their incident list.
In the current release, the columns of the incident list are:
- Timestamp
- Status
- Source
- Description
- Actions
Which looks like this:

However, for some users, it is desirable to add more source specific information to the incident overview, so as to not need to click on every single incident to get this details. The natural and suggested solution would be to add an interface to let the user select additional columns from a list of incident tags.
A concrete example:
- Every incident from NAV source systems is tagged with
category=something, to indicate the equipment category of the equipment the incident is all about. - The user wants to add a column for
category, which will display the value of thecategorytag of every incident that has this tag.
Specifics and limitations
-
A UI suggestion would be to add a button with a
+icon on the right-hand side of the column title line.- Clicking this button should bring up a dialog that lists tag names.
- Each tag name in the list should feature a checkbox to select it.
- Tag names that have been checked should ideally appear at the top of the list, so they can be easily found and unchecked again later.
- The list of tags may be very long, so there should be an optional text field to search/filter the list of tags
- Filling text in the filter field should ideally not filter out columns that have been checked, only those that are unchecked
- Presumably, most items will be unchecked - no-one wants a cluttered incident list.
- Filling text in the filter field should ideally not filter out columns that have been checked, only those that are unchecked
-
The user's selection of additional columns should be stored to localStorage, so the choices can be persisted between sessions.
Potential blockers
- It is yet unclear whether the backend supports an API endpoint to easily list unique tag names that are in use.
Future improvements
Once the backend gains the ability to store custom user preferences, the additional columns should be stored there, so they will also persist between different browsers or computers.