Release diff: master → previous_release - #26
Closed
Th0rgal wants to merge 2 commits into
Closed
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
* fix: add delete finding UI, false positive modal, and fix error display - Add DeleteFindingDialog component for clean finding deletion with cache invalidation - Add ViewFalsePositiveReportModal to view and delete false positive reports - Fix nested button hydration error by using div with role="button" and keyboard handling - Create useInvalidateFindingsCache hook to refresh all finding-related caches - Improve ErrorBanner for better API error visibility and recovery options - Remove Configure button background styling and update CORS documentation * fix: address PR review feedback - Fix retry button to actually refetch players data (not just stats) - Reset DeleteFindingDialog state when dialog opens or finding changes * fix: add error check for false positive report deletion * fix: prevent stale timeouts and keyboard event bubbling - Store timeout IDs in refs and clear them when dialog reopens or unmounts - Add e.target === e.currentTarget check to prevent keyboard events from nested buttons triggering parent handler * fix: add server ID guard for DeleteFindingDialog rendering
| key.startsWith(`players:${serverId}`) || | ||
| key.startsWith(`dashboard-stats:${serverId}`)), | ||
| undefined, | ||
| { revalidate: true } |
There was a problem hiding this comment.
Cache invalidation negates optimistic updates causing UI flicker
The invalidateAll function passes undefined as the second argument to global mutate, which explicitly clears the cache data before revalidation. This immediately negates the optimistic update performed by removeFinding moments earlier. The sequence is: optimistic removal updates cache → invalidateAll clears cache to undefined → revalidation fetches fresh data. This causes a brief visual flicker where the deleted finding reappears in an empty/loading state before the final correct state renders. To trigger revalidation without clearing cached data, the second argument shouldn't be passed or should preserve existing data.
Additional Locations (1)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Automated PR. The 'previous_release' branch is force-updated on every push to master to point at the commit before the push, so this PR always represents the current release diff.
Note
Introduces false-positive report management, finding deletion, and improved error handling across the dashboard, plus CORS/env and docs updates.
ViewFalsePositiveReportModalandDeleteFindingDialog; new actions to view/edit/delete reports and delete findings; integrate cache updates viaremoveFinding/removeReport; accessibility/keyboard tweaksErrorBanneron dashboard with retry (combines stats/players errors) and refetch logicremoveFinding,removeReport, anduseInvalidateFindingsCache.invalidateAllto revalidate related caches; minor SWR enhancementsCORS_PERMISSIVE_DEVand improvedCORS_ALLOW_ORIGINSguidance inapi/env.exampleand docs; addserver_addressplugin option docsWritten by Cursor Bugbot for commit cfc655f. This will update automatically on new commits. Configure here.