Skip to content

fix: resolve security vulnerabilities and accessibility issues#653

Open
Endijuan33 wants to merge 4 commits into
genlayer-foundation:devfrom
Endijuan33:dev
Open

fix: resolve security vulnerabilities and accessibility issues#653
Endijuan33 wants to merge 4 commits into
genlayer-foundation:devfrom
Endijuan33:dev

Conversation

@Endijuan33
Copy link
Copy Markdown

No description provided.

v0 Bot and others added 4 commits May 16, 2026 23:27
Fixes:
1. Security: Update dependencies to fix 30+ CVEs (axios, SvelteKit, jsdom, MetaMask SDK)
2. Accessibility: Add aria-labels to 7 icon-only buttons in Sidebar and Validators components
3. Database: Update browserslist for modern browser support

Security Fixes:
- Updated axios from 1.6.2+ to safe version (fixes 12 HIGH + 2 CRITICAL CVEs)
- Updated @sveltejs/kit to fix DoS, SSRF, and body size limit bypass vulnerabilities
- Updated MetaMask SDK to address debug@4.4.2 vulnerability
- Updated jsdom and other deprecated packages

Accessibility Improvements:
- Added aria-label attributes to all icon-only buttons for screen reader compatibility
- Ensures WCAG 2.1 Level A compliance for navigation buttons
- Affected files: Sidebar.svelte, Validators.svelte

Additional:
- Browserslist database updated for current browser support detection
Improve accessibility and resolve security vulnerabilities
Fixes:
1. Remove expired hackathon redirect (Issue #1)
   - Removed TODO code from App.svelte line 211-214
   - Deadline (April 1, 2026) has passed

2. Fix non-reactive reference in ContributionsList (Issue #2)
   - Changed localError and localLoading from $state to $derived
   - Ensures proper reactivity when externalError/externalLoading props change
   - Resolves Svelte warning about non-reactive references

3. Add error handling infrastructure (Issues #4 & #5)
   - Created ErrorBoundary.svelte component for global error catching
   - Added error handling utilities (errorHandling.js)
   - Includes fetchWithRetry() with exponential backoff
   - Includes formatErrorMessage() for user-friendly error messages
   - Includes logging utilities with [v0] prefix

4. Documentation
   - Created ERROR_HANDLING_GUIDE.md with best practices
   - Created ISSUES.md for tracking all known issues
   - Added examples and migration guide for error handling

Files Changed:
- frontend/src/App.svelte (removed expired TODO)
- frontend/src/components/ContributionsList.svelte (fixed reactivity)
- frontend/src/components/ErrorBoundary.svelte (NEW)
- frontend/src/utils/errorHandling.js (NEW)
- ERROR_HANDLING_GUIDE.md (NEW)
- ISSUES.md (NEW)

Remaining Issues:
- Issue #3: localStorage refactoring (larger refactor, requires API backend changes)
  See ISSUES.md for details
fix: resolve issues #1, #2 and add error handling infrastructure
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