Skip to content

H-6717: Dashboard config and refresh improvements#9085

Open
CiaranMn wants to merge 4 commits into
mainfrom
cm/dashboard-config-improvements
Open

H-6717: Dashboard config and refresh improvements#9085
CiaranMn wants to merge 4 commits into
mainfrom
cm/dashboard-config-improvements

Conversation

@CiaranMn

Copy link
Copy Markdown
Member

🌟 What is the purpose of this PR?

Fix some bugs and improve behaviour related to the custom dashboard page:

  1. Better handling of users manually defining chart config (as opposed to using the AI generation feature)
  2. Improve cache-busting behaviour of users clicking to regenerate the chart

Also fix a bug in the document inference flow where patching an email was referring to the wrong property key.

Pre-Merge Checklist 🚀

🚢 Has this modified a publishable library?

This PR:

  • does not modify any publishable blocks or libraries, or modifications do not need publishing

📜 Does this require a change to the docs?

The changes in this PR:

  • are internal and do not require a docs change

🕸️ Does this require a change to the Turbo Graph?

The changes in this PR:

  • do not affect the execution graph

@vercel

vercel Bot commented Jul 22, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
hash Ready Ready Preview, Comment Jul 22, 2026 3:52pm
2 Skipped Deployments
Project Deployment Actions Updated (UTC)
hashdotdesign-tokens Ignored Ignored Preview Jul 22, 2026 3:52pm
petrinaut Skipped Skipped Jul 22, 2026 3:52pm

@cursor

cursor Bot commented Jul 22, 2026

Copy link
Copy Markdown

PR Summary

Medium Risk
Touches dashboard data caching and Temporal workflow deduplication behavior plus entity persistence for configuration status; changes are scoped but affect paid sandbox recomputation and when items become ready.

Overview
Dashboard chart refresh now uses an explicit recompute analysis argument instead of force. User-initiated refresh always sends recompute: true on the first request; the API starts Temporal with ALLOW_DUPLICATE only for that case so a new run can start even when a workflow id already exists, while normal and background refreshes keep deduplication via REJECT_DUPLICATE.

Manual configuration treats chart series as the source of truth: getPrimaryChartType derives display type from the first series, validation rejects empty series, saves persist chartType from the config, and partial saves can set configurationStatus to ready when query, script, and chart are all present. The grid renderer resolves chart type from config before falling back to the stored property and separates missing config vs missing data errors.

The document inference flow fixes author email property metadata to use systemPropertyTypes.email.propertyTypeBaseUrl instead of the data type base URL.

Reviewed by Cursor Bugbot for commit 8a9711a. Bugbot is set up for automated code reviews on this repo. Configure here.

@github-actions github-actions Bot added area/apps > hash* Affects HASH (a `hash-*` app) area/apps > hash-api Affects the HASH API (app) area/libs Relates to first-party libraries/crates/packages (area) type/eng > frontend Owned by the @frontend team type/eng > backend Owned by the @backend team area/apps labels Jul 22, 2026
…m-config.ts

Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
Comment thread apps/hash-frontend/src/pages/dashboard/hooks/use-dashboard-item-config.ts Outdated
@vercel
vercel Bot temporarily deployed to Preview – petrinaut July 22, 2026 15:34 Inactive

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Want reviews to match your repository better? Bugbot Learning can learn team-specific rules from PR activity. A team admin can enable Learning in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 8a9711a. Configure here.

}

if (!chartType || !chartData) {
if (!chartConfig) {

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maps require chart config now

Medium Severity

Position-based map items previously rendered from chartType and chart data alone via WorldMapRenderer, which does not use chartConfig. The new early chartConfig guard blocks that path, so map items that only have chartType set show “Missing chart configuration” instead of the map.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 8a9711a. Configure here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/apps > hash* Affects HASH (a `hash-*` app) area/apps > hash-api Affects the HASH API (app) area/apps area/libs Relates to first-party libraries/crates/packages (area) type/eng > backend Owned by the @backend team type/eng > frontend Owned by the @frontend team

Development

Successfully merging this pull request may close these issues.

1 participant