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

Robustify Attestor #30

Open
RyuH1 opened this issue Aug 12, 2021 · 1 comment
Open

Robustify Attestor #30

RyuH1 opened this issue Aug 12, 2021 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@RyuH1
Copy link
Contributor

RyuH1 commented Aug 12, 2021

There is a corner case that could cause the chain having dirty data:

If an attestor get disconnected from chain, and not going to come back, the geode that it was attesting will remain in Registered state forever, and no one would be responsible for checking the liveness of that geode to ensure it's in proper status.

Thus here are some TODOs for eliminate this corner case:

  1. Attestor should maintain a way of informing the chain about its status periodically, if it failed to do so in a timeout, the chain should mark it as an offline attestor.
  2. As geode needs to be attested by a certain amount of attestors to get its state changed into attested(currently the amount is 1), while attestor could be offline at any moment, the geode needs a way to keep themselves aware of the situation on chain, and try to find new attestor as soon as possible to meet required number of attestors, otherwise it could be marked as degraded, or even worse: if no attestor is attesting it, will be marked as unknown.
  3. While it's true that geode can poll the chain to gets the information from chain, it would definitely be more ideal if the Geode can subscribe the Event emitted from the chain.
@RyuH1 RyuH1 added the enhancement New feature or request label Aug 12, 2021
@smilenow
Copy link

smilenow commented Sep 9, 2021

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants