[go: up one dir, main page]

Proto: move contracts & delegates RPC to plugin

What

Move contract_services.ml and delegate_services.ml from lib_protocol to lib_plugin

Follow-up issue: #7369

Why

So that these RPCs can be modified even after the protocol snapshot.

We considered moving all the RPC files from the protocol to the plugin (see PoC in !14079 (merged)), but we wanted to have more in-depth discussions on this first. So for now, we just move the RPCs that are of interest to Adaptive Issuance and Staking.

How

  • Move files contract_services.ml* and delegate_services.ml* to lib_plugin
  • Update call sites until the code compiles
  • Move the RPC.Registration module to a separate file, so that the moved files can use it too
  • Handle the registration of the moved RPCs

Manually testing the MR

CI, maybe call some <block>/context/contracts and <block>/context/delegates RPCs on a sandbox node

Checklist

  • Document the interface of any function added or modified (see the coding guidelines)
  • Document any change to the user interface, including configuration parameters (see node configuration)
  • Provide automatic testing (see the testing guide).
  • For new features and bug fixes, add an item in the appropriate changelog (docs/protocols/alpha.rst for the protocol and the environment, CHANGES.rst at the root of the repository for everything else).
  • Select suitable reviewers using the Reviewers field below.
  • Select as Assignee the next person who should take action on that MR
Edited by Diane Gallois-Wong

Merge request reports

Loading