Skip to content

feat: Pulse scene listeners#450

Open
kuruk-mm wants to merge 1 commit into
feat/pulsefrom
feat/pulse-scene-listeners
Open

feat: Pulse scene listeners#450
kuruk-mm wants to merge 1 commit into
feat/pulsefrom
feat/pulse-scene-listeners

Conversation

@kuruk-mm

Copy link
Copy Markdown
Member

Summary

Split out of #449 so the base Pulse protocol can land in main without the scene-listeners surface. This PR re-targets the scene listeners work (originally #437) onto feat/pulse:

  • SceneListenerHandshakeRequest — scene-listener connect message as ClientMessage oneof case 8: same signed-fetch auth_chain shape as HandshakeRequest, realm partition, and an immutable area of interest fixed for the connection lifetime. A listener is never a subject, so there is no initial state.
  • ParcelRect — inclusive parcel-coordinate rects (sint32) so large scenes announce their AoI in a few bytes; the sum of rect areas is capped server-side (SceneListener:MaxParcels).

Test plan

  • protoc compiles pulse_client.proto cleanly with the new messages
  • Server rejects handshakes whose summed rect area exceeds SceneListener:MaxParcels
  • Wire-compat check: existing ClientMessage cases (1–7) are unchanged

* feat: add SceneListenerHandshakeRequest to ClientMessage

Scene-listener connect message: signed-fetch auth chain, realm, and an
immutable parcel-index AoI. New ClientMessage oneof case (= 8).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* feat: scene-listener AoI as parcel rects

Replace SceneListenerHandshakeRequest.parcel_indices with inclusive
parcel-coordinate rects (sint32) so big scenes announce their AoI in a
few bytes. The sum of rect areas is capped server-side.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

Test this pull request

  • The @dcl/protocol package can be tested in scenes by running
    npm install "https://sdk-team-cdn.decentraland.org/@dcl/protocol/branch//dcl-protocol-1.0.0-30014052257.commit-ba7014b.tgz"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants