-
Notifications
You must be signed in to change notification settings - Fork 3
Conversation
Co-authored-by: adlrocha <adlrocha@tutamail.com>
…c-actors into weighted_vote
* update bottom up execution * update cross message execution * fix fmt * update review and clean up * check message ordering * Cross execution tests (#76) * fix clippy * fmt code
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@cryptoAtwill, I did a first pass over the PR. There's a lot of code, I want to have an additional one tomorrow before approving. I don't much will change in my next pass, but my brain is not working anymore today and I rather do a pass when I am fresh.
sdk/src/vote/submission.rs
Outdated
} | ||
} | ||
|
||
impl<V: Serialize> Serialize for EpochVoteSubmissions<V> { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do you need this custom serializer and you can't derive them?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Somehow if I use the derive, it would raise a trait not constraint error from Rust which I have already constraint. Only this way I can bypass the compilation error.
sdk/src/vote/voting.rs
Outdated
|
||
/// Handle the epoch voting | ||
#[derive(PartialEq, Eq, Clone)] | ||
pub struct Voting<Vote> { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a generic type, right? I think using Vote
is a bit confusing, I was trying to find to the underlying type everywhere
pub struct Voting<Vote> { | |
pub struct Voting<T> { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Amazing job, @cryptoAtwill. Have a look at my comments before merging. The most important one is to fix how we generate the HAMT keys for epochs. This lead to a bug in the interoperability with Go in checkpoints, so let's try to avoid it again (it was a hard one to fix :) )
* add cron fields * fmt code * Update gateway/src/state.rs Co-authored-by: adlrocha <adlrocha@tutamail.com> * Update gateway/src/types.rs Co-authored-by: adlrocha <adlrocha@tutamail.com> * update cron (#65) * update cron * fix lint --------- Co-authored-by: willesxm <willeslau@gmail.com> * add submit cron impl * add more checks * add some todo * derive total validators * add todo * specify rust tool chain * add tests * support abort * simplify impl * Track validators (#70) * track validators * add validator check to submit cron * update impl * Weighted vote (#71) * track validators * add validator check to submit cron * update impl * weighted vote * Update gateway/src/cron.rs Co-authored-by: adlrocha <adlrocha@tutamail.com> * update method name --------- Co-authored-by: adlrocha <adlrocha@tutamail.com> * Cron submit tests (#73) * track validators * add validator check to submit cron * update impl * weighted vote * Update gateway/src/cron.rs Co-authored-by: adlrocha <adlrocha@tutamail.com> * update method name * add tests * refactor pending epoches * fix clippy * add more tests --------- Co-authored-by: adlrocha <adlrocha@tutamail.com> * Refactor checkpoints (#74) * track validators * add validator check to submit cron * update impl * weighted vote * Update gateway/src/cron.rs Co-authored-by: adlrocha <adlrocha@tutamail.com> * update method name * add tests * refactor pending epoches * fix clippy * add more tests * initial commit * Cross execution (#75) * update bottom up execution * update cross message execution * fix fmt * update review and clean up * check message ordering * Cross execution tests (#76) * fix clippy * fmt code --------- Co-authored-by: adlrocha <adlrocha@tutamail.com> * cargo fmt * Vote checkpoints (#81) * track validators * add validator check to submit cron * update impl * weighted vote * Update gateway/src/cron.rs Co-authored-by: adlrocha <adlrocha@tutamail.com> * update method name * add tests * refactor pending epoches * fix clippy * add more tests * initial commit * Cross execution (#75) * update bottom up execution * update cross message execution * fix fmt * update review and clean up * check message ordering * Cross execution tests (#76) * fix clippy * fmt code * generics for cron submission * migrate to sdk * format code * remove wip field * work in progress * local changes * reorg code * update comment * update tests * format code and clippy * fix error --------- Co-authored-by: adlrocha <adlrocha@tutamail.com> * rename checkpoints to bottomup and topdown * fix tests * use CrossMsg for topdown checkpoint * fix checkpoint (#85) * update queue serialization (#86) * update queue serialization * remove println * fix fmt * genesis_epoch bottomup checkpoints to zero * fix test with new genesis checkpoint --------- Co-authored-by: willesxm <willeslau@gmail.com> Co-authored-by: adlrocha <adlrocha@tutamail.com>
Changes
Update
submit_cron_checkpoint
to use generic types, as such, the same logic can be applied to checkpoint submissions.Tests