sui icon indicating copy to clipboard operation
sui copied to clipboard

validator-api: support validators returning input/output objects when executing a certificate

Open bmwill opened this issue 10 months ago • 3 comments

Description

This is a part of the "execution 2.0" effort where we allow for a client to request that a validator provides input/output objects for a certificate that it executes.

This PR does the following:

  • Adds a new handle_certificate_v3 api to the Validator interface
  • adds support to transaction_orchestrator, quorum_driver, and authority_aggregator to be able to conditionally call handle_certificate_v2/v3 depending on the provided request parameters
  • Adds e2e test for ensuring that we can properly call the new api from transaciton_orchestrator -> quorum_driver -> authority_aggregator -> validator and back

The ability for end users to submit transactions and leverage this new mechanism to request input/output objects is not yet exposed (the existing v2 path is still used for all calls into jsonrpc) and such an endpoint will be added to the future REST interface in another PR.

Test plan

How did you test the new or updated feature?


Release notes

Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.

For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates.

  • [ ] Protocol:
  • [ ] Nodes (Validators and Full nodes):
  • [ ] Indexer:
  • [ ] JSON-RPC:
  • [ ] GraphQL:
  • [ ] CLI:
  • [ ] Rust SDK:

bmwill avatar Apr 22 '24 19:04 bmwill

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
sui-core ✅ Ready (Inspect) Visit Preview 💬 Add feedback May 1, 2024 6:31pm
sui-docs ✅ Ready (Inspect) Visit Preview 💬 Add feedback May 1, 2024 6:31pm
3 Ignored Deployments
Name Status Preview Comments Updated (UTC)
multisig-toolkit ⬜️ Ignored (Inspect) Visit Preview May 1, 2024 6:31pm
sui-kiosk ⬜️ Ignored (Inspect) Visit Preview May 1, 2024 6:31pm
sui-typescript-docs ⬜️ Ignored (Inspect) Visit Preview May 1, 2024 6:31pm

vercel[bot] avatar Apr 22 '24 19:04 vercel[bot]

Thanks @lxfind and @mystenmark for the initial review on this. I'm not planning on getting this merged immediately, specifically i want to implement that client side as well as add tests before getting this landed.

bmwill avatar Apr 23 '24 14:04 bmwill

@lxfind @mystenmark This is ready for review again, when you have the time

bmwill avatar Apr 25 '24 20:04 bmwill