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

decentraland / social-service-ea / 29098302998
90%
main: 90%

Build:
Build:
LAST BUILD BRANCH: feat/subscription-stream-close-reason
DEFAULT BRANCH: main
Ran 10 Jul 2026 02:08PM UTC
Jobs 1
Files 202
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

10 Jul 2026 02:02PM UTC coverage: 90.336% (+0.03%) from 90.311%
29098302998

Pull #432

github

LautaroPetaccio
feat: inform clients why a subscription stream is closed

Uses the new SubscriptionStreamClosed message from @dcl/protocol: before a
server-initiated close, the stream now yields a final message carrying a
close reason (and optional detail) instead of ending silently.

- emitterToGenerator: destroy() accepts an optional close reason, exposed
  via getCloseReason() so the consumer loop can act on it after draining.
- subscribers-context: teardown paths tag their reason — SERVER_SHUTTING_DOWN
  on stop, STALE_SUBSCRIPTION on both reconciliation sweeps — and
  removeConnection() forwards an optional caller-provided reason.
- handleSubscriptionUpdates: rejected duplicate subscriptions now tell the
  client why (DUPLICATE_SUBSCRIPTION) before closing, and destroys with a
  reason yield a final stream-closed message when the service provides a
  builder for it.
- All six subscribe services build the final message with fromPartial so it
  is protobuf-complete (zero-value defaults plus the notice).

Delivery is best-effort by nature: the final message only reaches clients
whose connection is still alive (duplicate rejection, shutdown drain);
teardowns triggered by an already-dead socket have no one to inform.
Pull Request #432: feat: inform clients why a subscription stream is closed

2358 of 2765 branches covered (85.28%)

Branch coverage included in aggregate %.

25 of 26 new or added lines in 9 files covered. (96.15%)

7 existing lines in 3 files now uncovered.

5887 of 6362 relevant lines covered (92.53%)

80.7 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
76.92
0.92% src/controllers/handlers/rpc/subscribe-to-private-voice-chat-updates.ts

Coverage Regressions

Lines Coverage ∆ File
4
93.6
0.04% src/adapters/rpc-server/subscribers-context.ts
2
97.91
0.1% src/logic/updates.ts
1
94.55
0.21% src/utils/emitterToGenerator.ts
Jobs
ID Job ID Ran Files Coverage
1 29098302998.1 10 Jul 2026 02:08PM UTC 404
91.29
GitHub Action Run
Source Files on build 29098302998
  • Tree
  • List 202
  • Changed 160
  • Source Changed 9
  • Coverage Changed 160
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #29098302998
  • Pull Request #432
  • PR Base - main (#29029690638)
  • Delete
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