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

decentraland / world-storage-service / 36402568663
97%

Build:
DEFAULT BRANCH: main
Ran 28 Sep 2026 09:19AM UTC
Jobs 1
Files 69
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

28 Sep 2026 09:17AM UTC coverage: 96.539% (-2.1%) from 98.683%
36402568663

push

github

web-flow
feat(auth): logsPermissions storage access + collaborator discovery (/collaborator) (#120)

* feat(auth): add logsPermissions extractor and content adapters

New src/logic/logs-permissions.ts (fail-closed extractor), worlds-content-server
getScenes(), and a catalyst-content adapter for POST /entities/active, wired into
DI with mocks and unit tests. No authorization/route behavior changed yet.

* feat(auth): add getLogsReadableScene to world-permission

Resolves a scene's logsPermissions live (Worlds via WCS getScenes, Genesis City
via catalyst /entities/active), returning the matched WorldScene or null,
fail-closed on error/zero-or-ambiguous match. hasWorldPermission and the LAMBDAS
land-permission path are unchanged.

* feat(auth): grant read-only Scene+Player storage to logsPermissions wallets

New readAccessAuthorizationMiddleware preset (allowLogsRead) wired onto the 7 GET
Scene/Player routes only; PUT/DELETE and all /env routes keep their presets and
never consult the logs-read arm (proven by a new route-policy test). Completes
Part A.

* feat(discovery): add scene_logs_access + sync_cursor tables and adapter

New migration creates the address-indexed scene_logs_access reverse index and a
sync_cursor table, plus a data adapter (upsertForScene/touch/removeScene/
listByAddress). Not wired to any route yet.

* feat(discovery): ingest Worlds deployments into scene_logs_access via SQS

Adds a deployment-consumer that subscribes to worlds-content-server deployment/
undeployment SNS events and upserts/removes the reverse index. Pins
@dcl/sqs-component + @dcl/queue-consumer-component; bumps @dcl/schemas to 24 for
the Worlds undeployment event types (only EthAddress/PaginatedParameters used
elsewhere). Lockfile to be regenerated in the canonical yarn environment.

* feat(discovery): backfill scene_logs_access on a granted logs-read

Fire-and-forget upsert (never blocks/fails the read, only on a verified-positive
grant) so old deployments a wallet actually... (continued)

623 of 667 branches covered (93.4%)

Branch coverage included in aggregate %.

303 of 326 new or added lines in 15 files covered. (92.94%)

1441 of 1471 relevant lines covered (97.96%)

69.62 hits per line

Uncovered Changes

Lines Coverage ∆ File
9
86.41
-7.34% src/components.ts
8
85.45
src/adapters/deployment-consumer/component.ts
3
90.65
-6.23% src/controllers/middlewares/authorization-middleware.ts
2
90.0
src/controllers/handlers/collaborator/get-collaborator.ts
1
95.0
src/adapters/catalyst-content/component.ts
Jobs
ID Job ID Ran Files Coverage
1 36402568663.1 28 Sep 2026 09:19AM UTC 138
96.97
GitHub Action Run
Source Files on build 36402568663
  • Tree
  • List 69
  • Changed 34
  • Source Changed 6
  • Coverage Changed 33
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #36402568663
  • f2251b31 on github
  • Prev Build on main (#32895581585)
  • Next Build on main (#37379481652)
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