NEAR-DevHub / neardevhub-treasury-dashboard

Frontend for Treasury Dashboard Product (includes DevHub, Infinex) + Testing front end. Note – we leverage Sputnik DAO contract.
MIT License
3 stars 0 forks source link

Dev: Governance Setting – Vote Duration #116

Closed ori-near closed 23 hours ago

ori-near commented 2 weeks ago

See https://github.com/NEAR-DevHub/neardevhub-treasury-dashboard/issues/86 for Governance Settings background.

Background

Our Treasury App currently lacks a dedicated section for admins to configure governance settings (see #86 for background). Specifically, there is no way for admins to adjust the "voting duration," or the number of days a vote is active before it expires. This limits the flexibility of governance processes, especially when there’s a need to adapt voting periods to different requirements

This ticket focuses on implementing a "Voting Duration" component within the Settings page, which would allow admins to configure the number of days a vote is open for proposals before it expires.

User Story

As an admin (user with permissions to manage members & setting), I want the ability to configure the voting duration so that I can choose the number of days a vote remain active before it expires, allowing me to manage voting timelines that work for my team.

Acceptance Criteria

1. Voting Duration Configuration Section

2. Warning Message for Impact on Existing Requests

3. Submit Request to Update Voting Duration

4. Handling of Existing Requests

Voting Duration Mockup

Image

Voting Duration Warning Mockup

@FREZZZBE will add once https://github.com/NEAR-DevHub/neardevhub-treasury-dashboard/issues/119 is complete.

ori-near commented 1 week ago

Moving this into sprint 3

petersalomonsen commented 1 week ago

@ori-near Regarding this point:

"Expired Requests: Any requests that were expired under the old voting duration but fall under the new voting duration will automatically move to the Pending Requests tab and be available for voting again"

The sputnik-dao contract works this way that the "Expired" state will only be applied if you act on a proposal ( if you vote ). So proposals that are not voted for, and if they are expired by the current duration setting, will be available for voting if the duration is extended.

If the proposal was voted for after expiry, and the "Expired" state was set on the proposal, then this change is irreversible, and changing the duration setting will not fix it.

ori-near commented 5 days ago

@petersalomonsen – understood this is the behavior on the contract side. That point was written from point of view of the user.