Skip to content

Pr 26 - #31

Closed
frankosakwe wants to merge 5 commits into
Utility-Protocol:mainfrom
frankosakwe:pr-26
Closed

Pr 26#31
frankosakwe wants to merge 5 commits into
Utility-Protocol:mainfrom
frankosakwe:pr-26

Conversation

@frankosakwe

@frankosakwe frankosakwe commented Jun 17, 2026

Copy link
Copy Markdown

closes#17

damianosakwe added 5 commits June 16, 2026 18:21
- Add useRetryQueue hook with complete state management for transaction retries
- Implement exponential backoff delays: 1s, 5s, 15s, 30s, 60s
- Add localStorage persistence for queue recovery across page reloads
- Implement all required functions: enqueue, updateTxHash, markConfirmed, markFailed, retry, purge
- Add proper timer cleanup and memory leak prevention
- Fix state transitions: pending -> submitted -> confirmed/failed with retrying intermediate state
- Add comprehensive test suite with 13 test cases covering serialization and retry logic
- Update Playwright configuration with webServer support for E2E testing
- Ensure SSR safety with window checks for localStorage access
- Create src/types/retry-queue.ts with QueuedTransaction and UseRetryQueueReturn types
- Update useRetryQueue hook to import types from centralized location
- Replace all 'any' types in tests with proper QueuedTransaction type
- Remove unused 'devices' import from playwright.config.ts
- Improve type safety and developer experience with better IntelliSense support
- Replace data: URL with http://localhost:3000 in tests for proper localStorage support
- Update reuseExistingServer to use !process.env.CI for better CI/CD compatibility
- Fixes SecurityError when accessing localStorage in data: URLs
- Ensures fresh server startup in CI environments while reusing in local development
- Replace localhost navigation with about:blank for lighter test setup
- Use addInitScript to initialize localStorage before page scripts run
- Removes dependency on dev server for localStorage unit tests
- Improves test performance and isolation
- Fix lint error by removing any type usage in useRetryQueue tests
- Add SSR guards for localStorage access in useWeb3Auth and session service
- Replace Math.random() with seeded random generators in FleetGrid and GridMap to fix hydration errors
- Update E2E tests to navigate to / instead of about:blank for localStorage access
- Add playwright-report and test-results to .gitignore

All 20 E2E tests passing, build successful, no lint or type errors
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.

2 participants