• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

ianjmacintosh / geograph / 16351833487
56%

Build:
DEFAULT BRANCH: main
Ran 17 Jul 2025 05:29PM UTC
Jobs 1
Files 58
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

17 Jul 2025 05:28PM UTC coverage: 55.753% (+7.6%) from 48.19%
16351833487

push

github

web-flow
feat: implement robust WebSocket reconnection with mobile support (#48)

* feat: implement robust WebSocket reconnection with mobile support

- Add progressive backoff reconnection (0ms→100ms→300ms→1s→3s→5s→10s)
- Implement circuit breaker to prevent infinite reconnection loops (max 10 attempts per 5-minute window)
- Add Page Visibility API integration for seamless tab switching on mobile
- Include heartbeat monitoring with 30-second ping intervals for connection health
- Enhanced error handling and connection state management
- Game state reconnection after WebSocket restore
- Comprehensive test coverage with unit tests and Playwright E2E tests
- Mobile environment simulation for tab switching scenarios

Fixes #43

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* test: fix WebSocket integration tests and complete reconnection implementation

* Fix DOM environment setup in WebSocket integration tests
* Apply working test patterns from simple test to complex integration tests
* Fix TypeScript issues with event listener mocking
* Resolve progressive backoff test timing issues
* Simplify visibility change test to focus on behavior over implementation
* Create comprehensive test coverage for WebSocket reconnection scenarios

All 19 WebSocket integration tests now pass:
- Progressive backoff reconnection (0ms → 100ms → 300ms → 1s → 3s → 5s → 10s)
- Circuit breaker protection (max 10 attempts per 5-minute window)
- Page Visibility API integration for mobile tab switching
- Heartbeat monitoring with 30-second ping/pong health checks
- Connection state management and error handling
- Game state reconnection with RECONNECT messages
- Resource cleanup on unmount

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: filter server ping messages at WebSocket layer to prevent UI warnings

* Add ping message handling in useWebSocketConnection to filter ... (continued)

247 of 310 branches covered (79.68%)

Branch coverage included in aggregate %.

575 of 676 new or added lines in 7 files covered. (85.06%)

1 existing line in 1 file now uncovered.

3353 of 6147 relevant lines covered (54.55%)

19.41 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
1
0.0
0.0% playwright.config.ts
2
0.0
0.0% app/routes/home.tsx
2
0.95
0.16% app/routes/join.tsx
4
0.0
0.0% app/routes/lobby.tsx
39
93.48
app/contexts/useWebSocketConnection.ts
53
0.0
app/components/ConnectionStatus.tsx

Uncovered Existing Lines

Lines Coverage ∆ File
1
0.95
0.16% app/routes/join.tsx
Jobs
ID Job ID Ran Files Coverage
1 16351833487.1 17 Jul 2025 05:29PM UTC 58
55.75
GitHub Action Run
Source Files on build 16351833487
  • Tree
  • List 58
  • Changed 5
  • Source Changed 5
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #16351833487
  • c4a9d569 on github
  • Prev Build on main (#16251881423)
  • Next Build on main (#16357804065)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc