Decouple customizable dashboards GraphQL from product analytics feature state
Problem to solve
The Analytics / Customizable Dashboard frontend and backend is tied to the state of Product Analytics.
- The vue app only shows the list of dashboards if PA has been onboarded.
- The GraphQL resolver only returns the list of dashboards if PA is enabled.
This causes issues !124460 (comment 1549358101) with the value stream dashboard added in Add Value stream dashboard to product analytics... (!124460 - merged) won't show unless the unrelated PA feature is both enabled and onboarded.
Screenshots
Current behaviour
No dashboards are listed.
Expected behaviour
The built-in VSD dashboard and other custom dashboards should be listed.
Proposed solution
- GraphQL should always return the list of all custom and enabled dashboards.
- frontend should always show all custom and enabled dashboards.
Considerations
The product analytics onboarded process intentionally blocks the user from going into dashboards first to stop the user from trying to interact with broken dashboards. We'll need to filter out built-in PA dashboards unless the PA has been onboarded.
Custom dashboards without product analytics. This is something we haven't put much thought or design into. Technically though users should be able to create new dashboards without PA, in which case the list of available visualizations will be empty / sparse. We should consider communicating to the user that they can enable PA to get more features.