Skip to content

fix(router): prevent subscription stalls during retry and SSE writes - #3163

Draft
mwisner wants to merge 8 commits into
wundergraph:mainfrom
mwisner:mwisner/fix/subscription-stall-recovery
Draft

fix(router): prevent subscription stalls during retry and SSE writes#3163
mwisner wants to merge 8 commits into
wundergraph:mainfrom
mwisner:mwisner/fix/subscription-stall-recovery

feat(router): restore SSE write duration metric

c71116b
Select commit
Loading
Failed to load commit list.
Codecov / codecov/project succeeded Aug 30, 2026 in 1s

54.77% (target 30.00%)

View this Pull Request on Codecov

54.77% (target 30.00%)

Details

Codecov Report

❌ Patch coverage is 70.50691% with 64 lines in your changes missing coverage. Please review.
✅ Project coverage is 54.77%. Comparing base (86ca1fd) to head (c71116b).
⚠️ Report is 23 commits behind head on main.

Files with missing lines Patch % Lines
router/core/subscription_response_writer.go 72.46% 14 Missing and 5 partials ⚠️
router/pkg/metric/metric_store.go 32.00% 15 Missing and 2 partials ⚠️
router/internal/retrytransport/retry_transport.go 27.27% 8 Missing ⚠️
router/pkg/metric/oltp_stream_metric_store.go 0.00% 6 Missing ⚠️
router/pkg/metric/stream_measurements.go 57.14% 3 Missing and 3 partials ⚠️
router/pkg/metric/measurements.go 50.00% 2 Missing and 2 partials ⚠️
router/pkg/metric/otlp_metric_store.go 50.00% 2 Missing ⚠️
router/pkg/metric/prom_metric_store.go 50.00% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3163      +/-   ##
==========================================
- Coverage   62.37%   54.77%   -7.61%     
==========================================
  Files         263      247      -16     
  Lines       31070    30681     -389     
==========================================
- Hits        19381    16805    -2576     
- Misses      10159    12253    +2094     
- Partials     1530     1623      +93     
Files with missing lines Coverage Δ
router/core/graph_server.go 83.51% <100.00%> (-1.84%) ⬇️
router/core/graphql_handler.go 63.13% <100.00%> (+0.44%) ⬆️
router/pkg/config/config.go 57.65% <ø> (-27.03%) ⬇️
router/pkg/metric/noop_metrics.go 77.27% <100.00%> (+2.27%) ⬆️
router/pkg/metric/noop_stream_metrics.go 71.42% <100.00%> (+11.42%) ⬆️
router/pkg/metric/prom_stream_metric_store.go 84.61% <100.00%> (+4.61%) ⬆️
router/pkg/metric/stream_metric_store.go 84.21% <100.00%> (+8.12%) ⬆️
router/pkg/pubsub/kafka/adapter.go 66.34% <100.00%> (-0.33%) ⬇️
router/pkg/pubsub/nats/adapter.go 64.07% <100.00%> (-1.04%) ⬇️
router/pkg/pubsub/redis/adapter.go 65.77% <100.00%> (-4.30%) ⬇️
... and 8 more

... and 123 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.