Skip to content

Catalyst Protocol Definition

RejectedPoll

Proposal Details

Author0x5e5d…de99
PublishedNov 16, 2021 18:06
Voting beginsNov 16, 2021 18:06
Voting endsNov 23, 2021 18:06
Snapshot#XpMpyKe

Description

The Catalyst API has been evolving and adding different functionalities, endpoints and parameters as needed by the evolving platform requirements. Because of this needs, some changes while good decisions at the moment to unblock features, were not thought holistically or now they may be causing too much unneeded Data Transfer cost or have room for performance improvement for the Catalysts core processes like Bootstrapping and Synchronization. Decision After reviewing the Catalyst API we defined a set of changes to clean up and close a first clean version of the Catalyst Protocol. The changes that will be described below will enable us to: - Reduce Data Transfer cost by only narrow down the response bodies to return needed information - Reduce public API complexity by hiding endpoints that are only intended for troubleshooting, this will also reduce hits to endpoints that should not be used externally - Improve the Catalyst bootstrapping and synchronization time by reducing the amount of request and information received for the synchronization - Contribute to the Platform scaling and support of more concurrent users - Do a more efficient uses of the DB - Open the door to create new Catalyst implementation based on this protocol definition and with this, help us to create a more robust Protocol List of API changes: Secure endpoints won't be part of the Catalyst Protocol definition but we will keep them as internal troubleshooting tools, these endpoints will require a key in order to be used. Those endpoints that will be removed from the Protocol but remain available for internal use are listed under the SECURE section Current API https://decentraland.github.io/catalyst-api-specs/ Branch with API changes https://github.com/decentraland/catalyst-api-specs/tree/api-refinement *NEW ENDPOINTS* These endpoints will help to replace the most request information to the /deployments /content/pointers/{entityType} Given an entity type (scene, wearables) this endpoint returns the list of all the pointers paginated /content/pointers/{entityType}/history?pointer=0,0&pointer=1,1 Given a list of pointers of the specified entity type, returns the history of deployments *RENAMED* From /lambdas/contentv2/scenes to /lambdas/content/scenes *SECURE* Removed from the public API and Protocol definition but kept for internal use /content/deployments /contents/{hashId}/active-entities /content/failed-deployments /lambdas/crypto/validate-signature /comms/islands /comms/islands/{islandId} /comms/peers *DEPRECATED* /lambdas/contentv2/parcel_info: This info is also at /content/entities/{entityType}?id={cid} /lambdas/contentv2/contents/{cid}: Should be downloaded with /content/contents/{cid} Please vote for YES if you agree with the described API Changes or NO if you consider that the proposed changes will have a negative impact on the Decentraland Protocol.

1 Comments

daoJul 19, 2022

Catalyst Protocol Definition This proposal has been REJECTED by a DAO Committee Member (0xfe91c0c482e09600f2d1dbca10fd705bc6de60bc)