Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Utility] Client should validate relay contents #943

Open
11 tasks
adshmh opened this issue Jul 27, 2023 · 0 comments
Open
11 tasks

[Utility] Client should validate relay contents #943

adshmh opened this issue Jul 27, 2023 · 0 comments
Assignees
Labels
utility Utility specific changes

Comments

@adshmh
Copy link
Contributor

adshmh commented Jul 27, 2023

Objective

Relay contents should be validated on client-side before being sent to the target (e.g. a servicer in case of trustless relays)

Origin Document

Client should not be sending relays with a clearly invalid contents, e.g. missing jsonrpc string in case of JSONRPC relays.
But this is not currently done:

image

Goals

  • Discuss the validations. More specifically:
    - Should the client perform validations specific to the target relay chain (e.g. not allow JSONRPC if the relay chain expects RESTful relays)
    - Should the client use or at-least enable the addition of method/chain-specific content validators: e.g. a custom/buildin validator that ensures the params object is valid for the specified method.
  • Perform "basic" relay content validation, whatever the definition of "basic" ends up to be for now.

Deliverable

  • MVP validation code for relay contents: limit the scope to JSONRPC and RESTful relays
  • Updated documentation as this is a user-facing change.
  • one or more issues that describe additional builtin/custom relay validators

Non-goals / Non-deliverables

  • Perform a complete validation of any of the relay types, e.g. JSONRPC, and guarantee correctness

General issue deliverables

  • Update any relevant local/global README(s)
  • Update relevant source code tree explanations
  • Add or update any relevant or supporting mermaid diagrams

Testing Methodology

  • Task specific tests or benchmarks: make ...
  • New tests or benchmarks: make ...
  • All tests: make test_all
  • LocalNet: verify a LocalNet is still functioning correctly by following the instructions at docs/development/README.md
  • k8s LocalNet: verify a k8s LocalNet is still functioning correctly by following the instructions here

Creator: [@adshmh ]
Co-Owners: [@Olshansk]

@adshmh adshmh added the utility Utility specific changes label Jul 27, 2023
@adshmh adshmh self-assigned this Jul 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
utility Utility specific changes
Projects
Status: Up Next
Development

No branches or pull requests

1 participant