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

decentraland / comms-gatekeeper / 34887569144
87%
main: 86%

Build:
Build:
LAST BUILD BRANCH: feat/cluster-livekit-subscriber
DEFAULT BRANCH: main
Ran 14 Sep 2026 07:35PM UTC
Jobs 1
Files 162
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

14 Sep 2026 07:31PM UTC coverage: 87.026% (+0.9%) from 86.086%
34887569144

Pull #283

github

LautaroPetaccio
refactor: move the ban-result cache into the access gate and extract the keyed queue

Cluster subscriber ban path. The subscriber asked the connection store for
the wallet's last device before calling the access gate, which user
moderation already does when no device id is supplied, and kept its own
30 s LRU of results. Both are gone: it now calls the gate by address with
the new `cached` option and drops the playerConnectionDb dependency. A
failing connection-store read now falls through to an address-only ban
match inside user moderation instead of failing open.

Access gate. Gains an opt-in result cache, a dedicated
@dcl/memory-cache-component instance (`accessGateCache`) keyed by address
and device id, with its TTL from ACCESS_GATE_CACHE_TTL_MS (renamed from
CLUSTER_BAN_CACHE_TTL_MS; the definitions repo sets neither). A result
produced by a swallowed ban-lookup failure is never kept. Callers that do
not opt in, the two token handlers, keep querying every time.

Keyed queue. The subscriber's per-wallet promise chain and the LiveKit
adapter's per-room metadata lock were the same mechanism. It is now
src/adapters/keyed-queue, with one instance per consumer
(`clusterWalletQueue`, `roomMetadataQueue`) and its own spec for the
ordering, isolation and cleanup guarantees.
Pull Request #283: feat: mint LiveKit island rooms from Pulse cluster feed (Archipelago ⇒ Pulse, iteration 1)

1261 of 1571 branches covered (80.27%)

Branch coverage included in aggregate %.

320 of 323 new or added lines in 17 files covered. (99.07%)

4 existing lines in 2 files now uncovered.

3441 of 3832 relevant lines covered (89.8%)

82.27 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
96.91
src/logic/cluster-subscriber/component.ts
1
85.85
1.31% src/adapters/livekit.ts

Coverage Regressions

Lines Coverage ∆ File
2
20.69
-2.3% src/adapters/scene-stream-access-manager.ts
2
90.22
-2.34% src/controllers/handlers/comms-scene-handler.ts
Jobs
ID Job ID Ran Files Coverage
1 34887569144.1 14 Sep 2026 07:35PM UTC 324
88.12
GitHub Action Run
Source Files on build 34887569144
  • Tree
  • List 162
  • Changed 97
  • Source Changed 6
  • Coverage Changed 97
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #34887569144
  • Pull Request #283
  • PR Base - main (#34352827071)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc