Dashboards have a cluster of editing issues which have come to the forefront with the new Home menu, which makes dashboards more prominent. Additionally, D17308 mitigated some of the worst cases of negative behavior but left us with "phantom" panels: less bad than policy fatals, but very annoying. The issues include:
- {T10612}
- {T10145}
- Incorrect duplicate panels can somehow appear in internal storage, per the note in D17308.
- If a dashboard does have an invalid or restricted panel, you can't currently remove it.
And maybe more broadly:
- {T8033}
- {T6018}
- {T10473}
Entangled are some product questions:
---
**Multiple Instances of a Panel**: Should it be possible to put the same panel on a dashboard multiple times?
Currently, this is probably so buggy (T10145) that support one way or another isn't clear.
This seems potentially useful if we have something like a configurable section divider panel, which you configure once and then copy several times to build a dashboard with a consistent look. This is a weak use case and I can't come up with any other reasons to do this offhand. But it also doesn't seem like something that we should necessarily //prevent//.
If we allow it, I think some internal stuff needs to be restructured, since `panelPHID` will no longer uniquely identify a particular instance of a panel on a dashboard.
If we do not allow it, we need to add controls to detect it and either prevent the user from continuing or take an appropriate alternate action (e.g., "add panel" becomes "move panel").
- How are we solving the various concerns from T12174 and elsewhere about dashboards turning into a big mess, particularly via "Copy Dashboard"? (What are the core problems here, versus stuff we see just on this install?)
---
The most immediate issue is the inability to remove phantom panels. I'm going to attempt to patch that in a narrow way and hotfix it to the cluster, but I'm not sure how much more mess I'm going to have to stumble through on the way there.