Skip to content

fix(dashboards): Copy saved filters when duplicating prebuilt dashboards#111017

Merged
gggritso merged 2 commits intomasterfrom
georgegritsouk/dain-1335-duplicating-a-pre-built-dashboard-doesnt-copy-over-the
Mar 19, 2026
Merged

fix(dashboards): Copy saved filters when duplicating prebuilt dashboards#111017
gggritso merged 2 commits intomasterfrom
georgegritsouk/dain-1335-duplicating-a-pre-built-dashboard-doesnt-copy-over-the

Conversation

@gggritso
Copy link
Copy Markdown
Member

@gggritso gggritso commented Mar 18, 2026

When duplicating a prebuilt dashboard, the saved filter values (e.g. global filters configured by the user) were not being copied to the new dashboard. The duplication reconstructed the dashboard entirely from the static config, which has empty filter values.

Now, useDuplicatePrebuiltDashboard fetches the saved dashboard from the detail endpoint to get the user's saved filters, then applies them to the duplicate. Widgets still come from the static config since they aren't stored for prebuilt dashboards.

Fixes DAIN-1335

Fetch the saved dashboard details from the API when duplicating a
prebuilt dashboard so that the user's saved filter values are preserved
on the copy.
@gggritso gggritso requested a review from a team as a code owner March 18, 2026 19:58
@linear-code
Copy link
Copy Markdown

linear-code bot commented Mar 18, 2026

@github-actions github-actions bot added the Scope: Frontend Automatically applied to PRs that change frontend components label Mar 18, 2026
@gggritso gggritso merged commit 8bec6d9 into master Mar 19, 2026
64 checks passed
@gggritso gggritso deleted the georgegritsouk/dain-1335-duplicating-a-pre-built-dashboard-doesnt-copy-over-the branch March 19, 2026 15:27
gggritso added a commit that referenced this pull request Mar 25, 2026
When duplicating a prebuilt dashboard, the clone was reconstructed from
static config which has empty default values for page-level filters. The
previous fix (#111017) copied the DashboardFilters object (globalFilter,
release) but missed the top-level page filter fields (projects,
environment, period, start, end, utc).

Also fixes the manage/list view duplication path which never fetched the
saved dashboard instance at all for prebuilt dashboards.

Refs DAIN-1406
Co-Authored-By: Claude <noreply@anthropic.com>
gggritso added a commit that referenced this pull request Mar 27, 2026
…ds (#111534)

When duplicating a prebuilt dashboard, the clone was reconstructed from
static config which has empty default values for page-level filters. The
previous fix (#111017) copied the `DashboardFilters` object
(`globalFilter`, `release`) but missed the top-level page filter fields
(`projects`, `environment`, `period`, `start`, `end`, `utc`).

This also fixes the manage/list view duplication path
(`useDuplicateDashboard`) which never fetched the saved dashboard
instance at all for prebuilt dashboards, so all saved filters (including
`globalFilter`) were lost in that code path.

Both paths now use a shared `copySavedFilters` helper that copies all 7
filter fields from the saved instance onto the clone.

Refs DAIN-1406

Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Scope: Frontend Automatically applied to PRs that change frontend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants