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

decentraland / comms-message-sfu
90%

Build:
DEFAULT BRANCH: main
Repo Added 21 May 2025 12:42PM UTC
Files 16
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

LAST BUILD ON BRANCH main
branch: main
CHANGE BRANCH
x
Reset
  • main
  • 0.0.0
  • 0.0.1
  • 0.0.2
  • 1.0.0
  • 1.1.0
  • chore/add-seq-diag-to-readme
  • chore/bump-livekit-rtc-node
  • chore/bump-node
  • claude/elegant-napier
  • dependabot/npm_and_yarn/ajv-6.14.0
  • dependabot/npm_and_yarn/brace-expansion-1.1.12
  • dependabot/npm_and_yarn/dcl/eslint-config-2.3.0
  • dependabot/npm_and_yarn/dcl/eslint-config-2.3.1
  • dependabot/npm_and_yarn/dcl/eslint-config-2.4.1
  • dependabot/npm_and_yarn/dcl/eslint-config-2.4.3
  • dependabot/npm_and_yarn/dcl/eslint-config-3.1.0
  • dependabot/npm_and_yarn/dcl/protocol-1.0.0-25825802864.commit-1efee00
  • dependabot/npm_and_yarn/flatted-3.4.1
  • dependabot/npm_and_yarn/flatted-3.4.2
  • dependabot/npm_and_yarn/form-data-4.0.4
  • dependabot/npm_and_yarn/livekit-server-sdk-2.13.1
  • dependabot/npm_and_yarn/livekit-server-sdk-2.13.2
  • dependabot/npm_and_yarn/livekit-server-sdk-2.13.3
  • dependabot/npm_and_yarn/livekit-server-sdk-2.14.0
  • dependabot/npm_and_yarn/livekit-server-sdk-2.14.1
  • dependabot/npm_and_yarn/livekit-server-sdk-2.14.2
  • dependabot/npm_and_yarn/livekit-server-sdk-2.15.0
  • dependabot/npm_and_yarn/livekit-server-sdk-2.15.1
  • dependabot/npm_and_yarn/livekit-server-sdk-2.15.2
  • dependabot/npm_and_yarn/livekit-server-sdk-2.15.3
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.14
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.16
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.17
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.18
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.19
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.20
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.21
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.22
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.23
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.24
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.25
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.26
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.27
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.28
  • dependabot/npm_and_yarn/livekit/rtc-node-0.13.29
  • dependabot/npm_and_yarn/lodash-4.17.23
  • dependabot/npm_and_yarn/lodash-4.18.1
  • dependabot/npm_and_yarn/nodemon-3.1.11
  • dependabot/npm_and_yarn/nodemon-3.1.14
  • dependabot/npm_and_yarn/protobufjs/utf8-1.1.1
  • dependabot/npm_and_yarn/types/node-22.15.23
  • dependabot/npm_and_yarn/types/node-22.15.24
  • dependabot/npm_and_yarn/types/node-22.15.29
  • dependabot/npm_and_yarn/types/node-22.15.30
  • dependabot/npm_and_yarn/types/node-24.0.0
  • dependabot/npm_and_yarn/types/node-24.0.1
  • dependabot/npm_and_yarn/types/node-24.0.10
  • dependabot/npm_and_yarn/types/node-24.0.11
  • dependabot/npm_and_yarn/types/node-24.0.12
  • dependabot/npm_and_yarn/types/node-24.0.13
  • dependabot/npm_and_yarn/types/node-24.0.14
  • dependabot/npm_and_yarn/types/node-24.0.3
  • dependabot/npm_and_yarn/types/node-24.0.4
  • dependabot/npm_and_yarn/types/node-24.0.6
  • dependabot/npm_and_yarn/types/node-24.0.7
  • dependabot/npm_and_yarn/types/node-24.1.0
  • dependabot/npm_and_yarn/types/node-24.10.0
  • dependabot/npm_and_yarn/types/node-24.10.1
  • dependabot/npm_and_yarn/types/node-24.10.2
  • dependabot/npm_and_yarn/types/node-24.2.0
  • dependabot/npm_and_yarn/types/node-24.2.1
  • dependabot/npm_and_yarn/types/node-24.3.0
  • dependabot/npm_and_yarn/types/node-24.3.1
  • dependabot/npm_and_yarn/types/node-24.3.2
  • dependabot/npm_and_yarn/types/node-24.5.0
  • dependabot/npm_and_yarn/types/node-24.5.1
  • dependabot/npm_and_yarn/types/node-24.5.2
  • dependabot/npm_and_yarn/types/node-24.6.0
  • dependabot/npm_and_yarn/types/node-24.6.1
  • dependabot/npm_and_yarn/types/node-24.6.2
  • dependabot/npm_and_yarn/types/node-24.7.0
  • dependabot/npm_and_yarn/types/node-24.7.1
  • dependabot/npm_and_yarn/types/node-24.7.2
  • dependabot/npm_and_yarn/types/node-24.8.0
  • dependabot/npm_and_yarn/types/node-24.8.1
  • dependabot/npm_and_yarn/types/node-24.9.0
  • dependabot/npm_and_yarn/types/node-24.9.1
  • dependabot/npm_and_yarn/types/node-24.9.2
  • dependabot/npm_and_yarn/types/node-25.0.0
  • dependabot/npm_and_yarn/types/node-25.0.1
  • dependabot/npm_and_yarn/types/node-25.0.10
  • dependabot/npm_and_yarn/types/node-25.0.2
  • dependabot/npm_and_yarn/types/node-25.0.3
  • dependabot/npm_and_yarn/types/node-25.0.7
  • dependabot/npm_and_yarn/types/node-25.0.8
  • dependabot/npm_and_yarn/types/node-25.0.9
  • dependabot/npm_and_yarn/types/node-25.1.0
  • dependabot/npm_and_yarn/types/node-25.2.0
  • dependabot/npm_and_yarn/types/node-25.2.1
  • dependabot/npm_and_yarn/types/node-25.5.0
  • dependabot/npm_and_yarn/types/node-25.5.2
  • dependabot/npm_and_yarn/types/node-25.6.0
  • dependabot/npm_and_yarn/types/node-25.6.1
  • dependabot/npm_and_yarn/types/node-25.6.2
  • dependabot/npm_and_yarn/types/node-25.7.0
  • dependabot/npm_and_yarn/types/node-25.8.0
  • dependabot/npm_and_yarn/types/node-25.9.0
  • dependabot/npm_and_yarn/types/node-25.9.1
  • dependabot/npm_and_yarn/typescript-5.9.2
  • dependabot/npm_and_yarn/typescript-5.9.3
  • feat/fw-msg-only-to-connected-peers
  • feat/include-form-in-protobuf-chat-message
  • feat/increment-failed-metric-when-proto-decode-fails
  • feat/livekit-community-routing
  • feat/skip-messages-from-non-members
  • fix/batch-community-msgs
  • fix/disconnect-when-room-is-not-null
  • fix/install-ca-certificates
  • fix/protocol-decoder-failing
  • fix/publish-connection-state-guard
  • fix/re-route-packets-instead-of-chats
  • fix/reconnection-loop

07 May 2026 02:57PM UTC coverage: 89.56% (+0.2%) from 89.356%
25503714461

push

github

web-flow
fix: guard publishData against non-connected Room (#113)

* fix: guard publishData against non-connected Room

A recent dev SIGSEGV happened inside @livekit/rtc-node native code
during the SDK's internal reconnect. Independently, there is a
latent race in routeMessage where an in-flight routing call can
outlive a concurrent disconnect and end up invoking publishData on
a Room whose native state is being torn down — which can crash the
process.

Add a ConnectionState check before each publishData so we bail
cleanly (logged + failed metric) instead of touching torn-down
native handles.

Also bump @livekit/rtc-node ^0.13.14 -> ^0.13.27, which brings in
upstream fixes around FFI event ordering, waiting for the disconnect
response, and native handle disposal — all in the same crash class.

Switch @dcl/protocol to the experimental dist-tag so we keep
tracking the experimental branch where Chat.forwarded_from lives;
main dropped that field.

* chore: bail before DB lookups when Room is not connected; dedupe state tests

Address review comments:

- Add an early ConnectionState check before db.belongsToCommunity /
  db.getCommunityMembers so a routing call against an already-disconnected
  Room avoids two unnecessary queries before failing.
- Collapse the CONN_DISCONNECTED / CONN_RECONNECTING test pair into a
  single it.each, matching the convention in disconnected-handler.spec.ts.
- Add a test that exercises the per-batch guard specifically — connection
  state flips during the members lookup, so the early check passes but
  the publish-time guard still bails before publishData.

65 of 78 branches covered (83.33%)

Branch coverage included in aggregate %.

5 of 5 new or added lines in 1 file covered. (100.0%)

261 of 286 relevant lines covered (91.26%)

8.99 hits per line

Relevant lines Covered
Build:
Build:
286 RELEVANT LINES 261 COVERED LINES
8.99 HITS PER LINE
Source Files on main
  • Tree
  • List 16
  • Changed 7
  • Source Changed 1
  • Coverage Changed 7
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
25503714461 main fix: guard publishData against non-connected Room (#113) * fix: guard publishData against non-connected Room A recent dev SIGSEGV happened inside @livekit/rtc-node native code during the SDK's internal reconnect. Independently, there is a latent... push 07 May 2026 02:58PM UTC web-flow github
89.56
23498671554 main feat: forward chat reactions to community members (#104) Add support for routing ChatReaction messages through the SFU, using the same community membership validation as chat messages. The sender's address is overwritten with the verified LiveKit... push 24 Mar 2026 03:49PM UTC web-flow github
89.36
23198388069 main fix: batch community msgs sending (#100) push 17 Mar 2026 02:09PM UTC web-flow github
89.01
23191529809 main chore(deps): bump flatted from 3.3.3 to 3.4.1 (#98) Bumps [flatted](https://github.com/WebReflection/flatted) from 3.3.3 to 3.4.1. - [Commits](https://github.com/WebReflection/flatted/compare/v3.3.3...v3.4.1) --- updated-dependencies: - dependen... push 17 Mar 2026 11:16AM UTC web-flow github
88.99
23191526023 main chore(deps): bump ajv from 6.12.6 to 6.14.0 (#99) Bumps [ajv](https://github.com/ajv-validator/ajv) from 6.12.6 to 6.14.0. - [Release notes](https://github.com/ajv-validator/ajv/releases) - [Commits](https://github.com/ajv-validator/ajv/compare/v... push 17 Mar 2026 11:16AM UTC web-flow github
88.99
23191451998 main chore(deps): bump lodash from 4.17.21 to 4.17.23 (#93) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.1... push 17 Mar 2026 11:14AM UTC web-flow github
88.99
23191443114 main chore(deps): Bump @dcl/eslint-config from 2.2.1 to 2.4.3 (#82) Bumps [@dcl/eslint-config](https://github.com/decentraland/eslint-config) from 2.2.1 to 2.4.3. - [Release notes](https://github.com/decentraland/eslint-config/releases) - [Commits](ht... push 17 Mar 2026 11:14AM UTC web-flow github
88.99
23191436121 main chore(deps): Bump livekit-server-sdk from 2.13.0 to 2.15.0 (#78) Bumps [livekit-server-sdk](https://github.com/livekit/node-sdks/tree/HEAD/packages/livekit-server-sdk) from 2.13.0 to 2.15.0. - [Release notes](https://github.com/livekit/node-sdks/... push 17 Mar 2026 11:14AM UTC web-flow github
88.99
23191429230 main chore(deps-dev): Bump typescript from 5.8.3 to 5.9.3 (#57) Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.8.3 to 5.9.3. - [Release notes](https://github.com/microsoft/TypeScript/releases) - [Changelog](https://github.com/micro... push 17 Mar 2026 11:14AM UTC web-flow github
88.99
23191421583 main chore(deps-dev): Bump nodemon from 3.1.10 to 3.1.11 (#72) Bumps [nodemon](https://github.com/remy/nodemon) from 3.1.10 to 3.1.11. - [Release notes](https://github.com/remy/nodemon/releases) - [Commits](https://github.com/remy/nodemon/compare/v3.1... push 17 Mar 2026 11:13AM UTC web-flow github
88.99
See All Builds (165)
  • Repo on GitHub
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