fix: Resolve E2E test timeout (post-merge hotfix)#54
Conversation
- Added PORT=3000 env var to Playwright webServer config - Added strictPort: isCI to Vite config (fail if port unavailable on CI) - Fixes 120-second timeout caused by Vite auto-incrementing to port 3003 - All E2E tests now pass (2 passed, 1 skipped, 29.1s) Issue: Playwright expected http://localhost:3000 but Vite used 3003 when 3000 was occupied Solution: Force consistent port usage for E2E test environment
WalkthroughThe changes modify development and testing configuration. Playwright config now explicitly sets PORT environment variable to 3000 for E2E tests to ensure consistency with test URLs. Vite config adds strict port mode for CI environments, causing the development server to fail if the specified port is unavailable instead of attempting alternate ports. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes
Poem
Pre-merge checks and finishing touches❌ Failed checks (2 warnings)
✅ Passed checks (1 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (2)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
🔇 Additional comments (2)
Comment |
📊 Test Reports & CoverageTest Results❌ Unit Tests: failure 📥 Download ArtifactsUnit Test Coverage📈 Unit Test Coverage Report -
E2E Test Results🎭 Playwright HTML Report - Build Artifacts📦 Build Artifacts - 📖 How to view reports
🤖 Auto-generated by CI/CD Pipeline • Updated on every push |
ℹ️ Unit Test Coverage NoteThe unit test failure ( This was approved and merged in PR #52 despite the coverage issue, as it's unrelated to the Signals System or this E2E port fix. This hotfix:
Recommendation: Merge this hotfix to unblock E2E tests in CI, then address coverage in a separate PR. |
🐛 Problem
After PR #52 merge, E2E tests timeout in CI (120 seconds waiting for dev server).
🔍 Root Cause
Port mismatch:
http://localhost:3000http://localhost:3003(auto-incremented when 3000 occupied)✅ Solution
🧪 Test Results
📊 Changes
Only 2 lines changed (1 per file)
Summary by CodeRabbit