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

BLOCKCHAIN-483 FE Congress close motions that have too many nay votes #311

Open
wants to merge 3 commits into
base: develop
Choose a base branch
from

Conversation

SzymonZiebaNeti
Copy link
Collaborator

No description provided.

@DorianSternVukotic
Copy link
Collaborator

50% nay votes reached, no button showing
2024-08-22_13-00

Copy link
Collaborator

@DorianSternVukotic DorianSternVukotic left a comment

Choose a reason for hiding this comment

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

See comments, doesnt seem to work

@@ -25,6 +26,8 @@ export default function Motion({

const isClosable = voting.ayes.length >= threshold;

const isClosableNaye = voting.nays.length >= 50;
Copy link
Collaborator

Choose a reason for hiding this comment

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

It should be something like voting.nays.length > number_of_congressmen - threshold.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

yes i just take has more than 50 nay votes from task, too literally

Copy link
Collaborator

Choose a reason for hiding this comment

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

percent xD

Copy link
Collaborator

@DorianSternVukotic DorianSternVukotic left a comment

Choose a reason for hiding this comment

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

2024-09-05_23-10
0 nays, close motion button present, it shouldnt be like this ?

@@ -58,7 +61,7 @@ export default function Motion({
<b>
{voting.nays.length}
/
{threshold}
{(membersCount / 2).toFixed()}
Copy link
Collaborator

Choose a reason for hiding this comment

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

Doesn't make sense. Why /2?

Copy link
Collaborator

Choose a reason for hiding this comment

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

If anything this should be membersCount-threshold+1, but TBH I expect this to confuse the hell out of people.

@@ -25,6 +26,8 @@ export default function Motion({

const isClosable = voting.ayes.length >= threshold;

const isClosableNaye = voting.nays.length >= membersCount - threshold;
Copy link
Collaborator

Choose a reason for hiding this comment

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

This should be a hard inequality (>).
See my previous comment: #311 (comment)

Seems like there's still no understanding of how this works, so let me explain.

Motion can be "closed & executed", when there's enough ayes votes to meet the threshold.
Motion can be "closed", when there's enough nays that we already know that we can't get enough ayes anymore to meet the threshold.

So a few samples:

  • 3 members, threshold=2. So 1 nay is OK, but if we get 2 nays then there's only 1 more member left to
    potentially cast aye, so we should show the close button
  • 4 members, threshold=3. So same as before - 1 nay is ok, but 2 nays leaves us with only 2 more potential ayes, which isn't enough for the threshold
  • 10 members, threshold=6. Up to 4 nays is OK, as it still leaves 6 members to potentially cast aye. 5 nays is when we know that this will never pass and we can close.

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

Successfully merging this pull request may close these issues.

3 participants