Skip to content

perf: skip structural sharing on the notifications query - #3320

Open
fmguerreiro wants to merge 1 commit into
gitify-app:mainfrom
fmguerreiro:perf/skip-structural-sharing
Open

fmguerreiro wants to merge 1 commit into
gitify-app:mainfrom
fmguerreiro:perf/skip-structural-sharing

Conversation

@fmguerreiro

@fmguerreiro fmguerreiro commented Sep 18, 2026 •

Copy link
Copy Markdown
Contributor

Every write to the notifications query deep-compares the whole cached tree, so marking one notification walks every notification in the inbox, and each poll pays it again. This turns structural sharing off for that query.

Trade: each poll now returns fresh objects, so every mounted row re-renders. #3319 (virtualize the notification list) is now merged into main, so only the visible rows are mounted and that cost stays bounded.

Split out of #3319, as @setchy asked.

Refresh

  • Rebased onto current main; the branch is now a single commit with no merge commit.
  • Validation rerun on the refreshed branch: 1,835 unit tests pass (184 files), and lint, format, and TypeScript checks are clean.

@github-actions github-actions Bot added the refactor Refactoring of existing feature label Sep 18, 2026
Marking a notification froze the renderer for 8.5s on a 1274-notification inbox: every cache write deep-compared the enriched tree.
@setchy
setchy force-pushed the perf/skip-structural-sharing branch from 0ea20b5 to 1cf0391 Compare October 4, 2026 11:21
@setchy
setchy marked this pull request as ready for review October 4, 2026 11:21

This branch has not been deployed

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

Labels

refactor Refactoring of existing feature

Development

Successfully merging this pull request may close these issues.

2 participants