Skip to content

[VPD-2108] feat: add boundary for dashboard - #5815

Closed
cuzz-venus wants to merge 3 commits into
mainfrom
fix/account-performance-history-empty-data-points
Closed

cuzz-venus wants to merge 3 commits into
mainfrom
fix/account-performance-history-empty-data-points

Conversation

@cuzz-venus

@cuzz-venus cuzz-venus commented Sep 16, 2026 •

Copy link
Copy Markdown
Contributor

Jira ticket(s)

VPD-2108

Changes

  • add error boundary for dashboard

@changeset-bot

changeset-bot Bot commented Sep 16, 2026 •

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 73086e3

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@venusprotocol/evm Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@vercel

vercel Bot commented Sep 16, 2026 •

Copy link
Copy Markdown

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

Project Deployment Actions Updated
dapp-preview Ready Ready Preview Oct 13, 2026 5:43am UTC
dapp-testnet Ready Ready Preview Oct 13, 2026 5:43am UTC
venus.io Ready Ready Preview Oct 13, 2026 5:43am UTC

Request Review

@greptile-apps

greptile-apps Bot commented Sep 16, 2026 •

Copy link
Copy Markdown

RetriggerConfidence Score: 4/5

[Medium impact] Adds error boundaries to dashboard sections and chart.

Do not merge yet: the previous navigation failure remains, and the new components must follow the required file structure.

Findings

  1. P1 Error persists across navigation ▶
  2. P2 Components share a file ▶

Summary

Adds error boundaries around dashboard sections, charts, and page content.

  • Dashboard sections show their own error message and retry action.
  • Chart history and axis labels use only data points that exist.

Reviews (2) · Last reviewed commit: "chore: extract translations" · Reviewed by Greptile

Comment on lines +64 to +66
<SectionErrorBoundary className="my-20">
<Outlet />
</SectionErrorBoundary>

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Error persists across navigation

Layout remains mounted when users navigate between sibling routes. If one page throws, this boundary stays in its error state and hides the destination page until the user clicks Retry or reloads. Reset the boundary when the route changes so a failure on one page does not block another page.

Suggested change
<SectionErrorBoundary className="my-20">
<Outlet />
</SectionErrorBoundary>
<SectionErrorBoundary key={pathname} className="my-20">
<Outlet />
</SectionErrorBoundary>

Knowledge Base Used: Application shell and routing

@github-actions

github-actions Bot commented Sep 16, 2026 •

Copy link
Copy Markdown
Contributor

Coverage Report for ./apps/evm

Status Category Percentage Covered / Total
🔵 Lines 80.47% 55185 / 68574
🔵 Statements 80.47% 55185 / 68574
🔵 Functions 74.48% 1719 / 2308
🔵 Branches 86.13% 8222 / 9545
File Coverage
File Stmts Branches Functions Lines Uncovered Lines
Changed Files
apps/evm/src/clients/api/queries/getAccountPerformanceHistory/index.ts 89.83% 92.3% 100% 89.83% 48-53
apps/evm/src/components/index.ts 100% 100% 100% 100%
apps/evm/src/components/AreaChart/index.tsx 100% 100% 100% 100%
apps/evm/src/components/AreaChart/AreaChartContent/index.tsx 91.75% 66.66% 25% 91.75% 53-56, 89, 103-105
apps/evm/src/components/AreaChart/getXAxisTicks/index.ts 87.5% 75% 100% 87.5% 19-20, 28, 42
apps/evm/src/components/SectionErrorBoundary/index.tsx 100% 100% 100% 100%
apps/evm/src/containers/Layout/index.tsx 72.6% 85.71% 50% 72.6% 30-59
apps/evm/src/pages/Dashboard/index.tsx 82.5% 30% 100% 82.5% 29-34, 103-112, 115-120
Generated in workflow #14394 for commit 73086e3 by the Vitest Coverage Report Action

@cuzz-venus

Copy link
Copy Markdown
Contributor Author

/net-worth served with only its "now" point.

Before (main) After (this PR)
Dashboard goes blank (bodyLen 0) Same response, dashboard renders

@cuzz-venus

Copy link
Copy Markdown
Contributor Author

@greptile review again

Comment on lines +147 to +150
export const AreaChart = <T extends Record<string, any>>(props: AreaChartProps<T>) => (
<SectionErrorBoundary className="my-4">
<AreaChartContent {...props} />
</SectionErrorBoundary>

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Components share a file

AreaChartContent and AreaChart now share one file. The repository requires each component to live in its own named directory and allows at most one component per file. Move AreaChartContent into its own directory before merging. The same requirement applies to Boom and ConditionalBoom in the new boundary tests.

Context Used: AGENTS.md (source)

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

This branch was successfully deployed

3 active deployments
Preview – dapp-preview — 73086e3e Deployed Oct 13, 2026 by vercel[bot]
Preview – dapp-testnet — 73086e3e Deployed Oct 13, 2026 by vercel[bot]
Preview – venus.io — 73086e3e Deployed Oct 13, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant