Skip to content

perf(raycast): cache registry dirty signatures - #548

Closed
JustYannicc wants to merge 1 commit into
SuperCmdLabs:mainfrom
JustYannicc:codex/perf-registry-dirty-checks-pr
Closed

perf(raycast): cache registry dirty signatures#548
JustYannicc wants to merge 1 commit into
SuperCmdLabs:mainfrom
JustYannicc:codex/perf-registry-dirty-checks-pr

Conversation

@JustYannicc

Copy link
Copy Markdown
Collaborator

What changed

  • Replaced List/Grid full-registry dirty snapshots with per-item visible signature caches.
  • Added focused regression/metrics coverage for recreated-but-equivalent props and visible field changes.
  • Kept the clean branch scoped to current origin/main runtime shapes.

Why

Large registries were still rebuilding snapshot strings for unchanged recreated item props before virtualization could help. This lets unchanged item updates avoid full-registry walks and skip registry version publishes.

Compatibility impact

  • List signatures cover id, order, section, title, subtitle, icon, accessories, keywords, detail, quickLook, and action type.
  • Grid signatures cover id, order, section title, title, subtitle, content, accessory, keywords, quickLook, and action type.
  • Ordering, selection, selected actions, details, filtering keywords, emoji/icon values, and Raycast API-facing item fields remain represented in dirty checks.

How tested

  • node scripts/test-registry-dirty-checks.mjs
  • node scripts/test-registry-dirty-checks.mjs --report
  • LSP diagnostics on touched List/Grid hook files: no errors
  • ./node_modules/.bin/tsc -p tsconfig.renderer.json --noEmit reaches TypeScript but fails on existing origin/main errors outside this PR, including App.tsx, CameraExtension.tsx, launcher command model/control types, i18n runtime, and existing raycast-api/settings utility issues.

Stack validation

  • Clean PR branch: codex/perf-registry-dirty-checks-pr from origin/main with only this scoped fix.
  • Worker branch: codex/perf-registry-dirty-checks from fork/codex/perf-consolidated-integration-stack; validated there with stable-order, emoji-grid virtualization, and grid virtualization scripts before clean-branch adaptation.

@JustYannicc

Copy link
Copy Markdown
Collaborator Author

Superseded by consolidated upstream PR #555.

@JustYannicc JustYannicc closed this Jul 3, 2026
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