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

Multi-token census strategy #171

Open
5 tasks
jpaulet opened this issue Apr 2, 2024 · 0 comments
Open
5 tasks

Multi-token census strategy #171

jpaulet opened this issue Apr 2, 2024 · 0 comments

Comments

@jpaulet
Copy link
Member

jpaulet commented Apr 2, 2024

As an organizer of the voting process, I want the ability to utilize a multi-token census strategy in order to accurately represent diverse stakeholder interests. This feature should allow me to add multiple tokens to generate a comprehensive census using Census3 strategies.

Additionally, I need the option to select either "OR" or "AND" as a combination strategy for these tokens. Furthermore, I should be able to remove tokens from the list as needed (by clicking on the new "x" icon). The user interface (UI) should be improved to clearly explain the functionality of the token census feature.

Also, a new configuration section should be introduced to determine how users' voting power is computed, either by summing the weights of their tokens or by assigning each user equal voting power (1 voting power).

Last, integration with Gitcoin Passport should be provided to enable sybil-resistant authentication proof when checking that specific parameter, also the organizer will have the possibility to select the desired CSP score (default to "1").

Acceptance Criteria:

  • The process creation form should be updated to allow for the addition of multiple tokens for the census strategy: after adding a token, a new button "Add new token" should appear (removing the "Network + Token" list from the UI until this button is clicked by the user). Place the component below the previously added token.
  • Users should be able to select either "OR" or "AND" as a combination strategy for the tokens.
  • The UI should include an option to remove tokens from the list.
  • The text explaining the token census functionality should be enhanced to clearly articulate its purpose and usage.
  • A new "Configuration" section should be added to the form to determine how users' voting power is computed.
    • Users should be able to choose between summing the weights of their tokens or assigning equal voting power to each user. This feature, should be disabled until more than 1 token are added.
    • Integration with Gitcoin Passport should be provided for sybil-resistant voting process, with a custom CSP score.

Tasks:
UI Modification:
- Update the process creation form to include the ability to add multiple tokens for the census strategy.
- Implement the checkboxes to allow users to select the combination strategy ("OR" or "AND"). Those checkboxes will be only visible when the organizer has clicked the new "Add new token" button.
- After selecting a token, the "Network + Token" dropdown should disappear, and show again when clicking the "New token" button.
- Include the new "x" button to remove tokens from the list.
Text Enhancement:
- Improve the explanatory text to clearly communicate the purpose and functionality of the token census feature.
Configuration Section:
- Integrate a new section into the form to configure the computation of users' voting power (sum of the weights or assigning equal voting power).
Gitcoin Passport Integration:
- Integrate Gitcoin Passport for sybil-resistant with custom CSP score. Implement the necessary API calls and authentication mechanisms and add this into the final strategy.
Testing
Deployment:
- Coordinate with the team to deploy the changes to the production environment.

Visual Reference:
Screenshot 2024-04-02 at 07-37-55 uizard

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

No branches or pull requests

1 participant