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

bug: half the committee members casting ballots is not a quorum #10306

Merged
merged 1 commit into from
Oct 24, 2024

Conversation

Chris-Hibbert
Copy link
Contributor

@Chris-Hibbert Chris-Hibbert commented Oct 22, 2024

closes: #10274

Description

Half the EC were able to pass a motion, when a majority should have been required.

Security Considerations

Ordinary vote counting issue.

Scaling Considerations

N/A

Documentation Considerations

None

Testing Considerations

Added tests for committee.

Upgrade Considerations

The change is in the committee code. This needs to be merged before the proposal in #10164 runs. It already installs new committee code.

@Chris-Hibbert Chris-Hibbert added the Governance Governance label Oct 22, 2024
@Chris-Hibbert Chris-Hibbert self-assigned this Oct 22, 2024
@Chris-Hibbert Chris-Hibbert requested a review from a team as a code owner October 22, 2024 01:02
Copy link

cloudflare-workers-and-pages bot commented Oct 22, 2024

Deploying agoric-sdk with  Cloudflare Pages  Cloudflare Pages

Latest commit: b1a98fa
Status: ✅  Deploy successful!
Preview URL: https://bd0364b8.agoric-sdk.pages.dev
Branch Preview URL: https://10274-majorityvote.agoric-sdk.pages.dev

View logs

@Chris-Hibbert Chris-Hibbert added the bug Something isn't working label Oct 22, 2024
@Chris-Hibbert Chris-Hibbert requested a review from dckc October 22, 2024 16:23
Copy link
Member

@dckc dckc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest trying force:integration. I think that will show that a3p has a 2 member EC and a3p tests rely on being able to carry a question by casting just one vote.

That is: this is a breaking change, and I'm not sure how much integration testing is in order to mitigate surprises.

Mainnet likewise has an ever number of EC members. I believe they rely on being able to make decisions based on 3 votes. I suppose that changes as of #10164 , so that's OK.

I think devnet and emerynet have 3 EC members, so they wouldn't be affected by this change.

@Chris-Hibbert Chris-Hibbert added the force:integration Force integration tests to run on PR label Oct 22, 2024
@Chris-Hibbert
Copy link
Contributor Author

the force:integration tests passed.

I think that will show that a3p has a 2 member EC and a3p tests rely on being able to carry a question by casting just one vote.

Can you check your expectations? Does that test exist? Why is it still able to pass?

@dckc
Copy link
Member

dckc commented Oct 22, 2024

I think that will show that a3p has a 2 member EC and a3p tests rely on being able to carry a question by casting just one vote.

Can you check your expectations? Does that test exist? Why is it still able to pass?

Looks like it's in a PR that isn't merged yet.

#10241 (comment)

the force:integration tests passed.

That suggests that we could / should merge this one, but I think that would add work to #10241 , and #10241 closes several issues that are higher priority than #10274 . So I'm inclined to wait to merge this until #10241 lands.

Maybe we should increase the EC size in a3p to 3 in #10241 , making it unaffected by this change?

@Chris-Hibbert
Copy link
Contributor Author

That suggests that we could / should merge this one, but I think that would add work to #10241 , and #10241 closes several issues that are higher priority than #10274 . So I'm inclined to wait to merge this until #10241 lands.

I'm fine with waiting, and leaving the burden here.

Maybe we should increase the EC size in a3p to 3 in #10241 , making it unaffected by this change?

If we increase the EC size to 3, the quorum will be 2, and at least two voters will have to vote, so a3p will be affected either way. I think it's correct for the committee to enforce that more than half the voters have to vote to get a quorum, and there have to be more votes in favor than against to pass a motion.

@Chris-Hibbert
Copy link
Contributor Author

rebased pose 10241. Let's see how tests do.

@Chris-Hibbert
Copy link
Contributor Author

@dckc, PTAL. Tests pass.

Copy link
Member

@dckc dckc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We're using 3-member committees in a3p and devnet configs now. So this shouldn't cause problems.

@Chris-Hibbert Chris-Hibbert added the automerge:rebase Automatically rebase updates, then merge label Oct 24, 2024
@mergify mergify bot merged commit 823c8d1 into master Oct 24, 2024
80 checks passed
@mergify mergify bot deleted the 10274-majorityVote branch October 24, 2024 22:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
automerge:rebase Automatically rebase updates, then merge bug Something isn't working force:integration Force integration tests to run on PR Governance Governance
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Vote Counter should use greater than logic
2 participants