test(webapp): stop streamBatchItems container tests timing out on cold start#3900
Conversation
…d start The streamBatchItems suite was intermittently failing with a 30s test timeout. The 30s budget covers container-fixture setup, and each of the 16 cases boots its own per-test Redis container and spins up a full RunEngine; a cold container boot counts against the test's own timeout, so under CI Docker contention whichever test booted while Docker was busiest could exceed 30s. It is not a product-logic hang. Two changes: - Add a containerTestWithIsolatedRedisNoClickhouse fixture (Postgres template-clone + per-test Redis, no ClickHouse) and use it here. These tests never touch ClickHouse, yet the previous fixture's auto resetClickhouse forced a ClickHouse boot + full migration onto the cold-start test. - Raise the suite testTimeout from 30s to 120s, matching the run-engine package convention for tests of this footprint (RunEngine + per-test container).
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📜 Recent review details⏰ 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). (24)
🧰 Additional context used📓 Path-based instructions (10)**/*.{ts,tsx}📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Files:
**/*.{ts,tsx,js,jsx}📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Files:
**/*.ts📄 CodeRabbit inference engine (.cursor/rules/otel-metrics.mdc)
Files:
**/*.{js,ts,tsx,jsx,css,json,md}📄 CodeRabbit inference engine (AGENTS.md)
Files:
{packages/core,apps/webapp}/**/*.{ts,tsx}📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Files:
**/*.{test,spec}.{ts,tsx}📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Files:
apps/webapp/**/*.{ts,tsx}📄 CodeRabbit inference engine (.cursor/rules/webapp.mdc)
Files:
apps/webapp/**/*.test.{ts,tsx}📄 CodeRabbit inference engine (.cursor/rules/webapp.mdc)
Files:
**/*.test.{ts,tsx}📄 CodeRabbit inference engine (CLAUDE.md)
Files:
**/*.test.{js,ts,tsx}📄 CodeRabbit inference engine (AGENTS.md)
Files:
🧠 Learnings (10)📚 Learning: 2026-03-22T13:26:12.060ZApplied to files:
📚 Learning: 2026-03-22T19:24:14.403ZApplied to files:
📚 Learning: 2026-05-18T08:21:27.694ZApplied to files:
📚 Learning: 2026-05-18T08:21:27.694ZApplied to files:
📚 Learning: 2026-06-04T18:16:35.386ZApplied to files:
📚 Learning: 2026-06-09T17:58:04.699ZApplied to files:
📚 Learning: 2026-05-07T12:25:18.271ZApplied to files:
📚 Learning: 2026-05-28T20:02:10.647ZApplied to files:
📚 Learning: 2026-05-12T21:04:05.815ZApplied to files:
📚 Learning: 2026-05-18T14:40:02.173ZApplied to files:
🔇 Additional comments (2)
WalkthroughThis PR adds a new test fixture variant that configures Postgres and Redis isolation without ClickHouse container overhead. A type 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Warning Tools execution failed with the following error: Failed to run tools: 13 INTERNAL: Received RST_STREAM with code 2 (Internal server error) Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Fixes an intermittent
Test timed out in 30000msin thestreamBatchItemssuite. Not a logic hang — the 30s budget covers container setup, and each case boots its own per-test Redis container + a fullRunEngine, so under CI Docker contention a cold boot can cross 30s (which is why the failure moved between tests).containerTestWithIsolatedRedisNoClickhousefixture (Postgres clone + per-test Redis, no ClickHouse) — this suite never uses ClickHouse, but the old fixture's autoresetClickhouseforced a ClickHouse boot + migration onto the cold-start test.testTimeout30s → 120s, matching the run-engine convention for this footprint.