-
Notifications
You must be signed in to change notification settings - Fork 835
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
pallet-bounties: extends update_due infinitly if BountiesUpdatePeriod… #7723
base: master
Are you sure you want to change the base?
Conversation
prdoc/pr_7723.prdoc
Outdated
title: '[pallet-bounties] Make BountyUpdatePeriod optional' | ||
doc: | ||
- audience: Runtime Dev | ||
description: Refactored `BountyUpdatePeriod` to be optional and adjusted expiration handling to default to `BlockNumber::MAX` when `None`. |
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 will be included in the release notes. I would explain what this means. this is more like a description of the implementation, it can be read from the code.
also please add PR description
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.
Updated. Thanks!
substrate/frame/bounties/src/lib.rs
Outdated
@@ -221,9 +224,9 @@ pub mod pallet { | |||
#[pallet::constant] | |||
type BountyDepositPayoutDelay: Get<BlockNumberFor<Self, I>>; | |||
|
|||
/// Bounty duration in blocks. | |||
/// Optional bounty duration in blocks. If `None`, it is considered `BlockNumber::MAX`. |
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.
it was a poor doc for this parameter, lets give more context. explain behaviour.
".. it is considered BlockNumber::MAX
" is description of the implementation. what it means for a user.
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.
Updated. Thanks!
All GitHub workflows were cancelled due to failure one of the required jobs. |
If slashing of curators is necessary, it can be handled through OpenGov. | ||
This reduces friction in curator management. |
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.
If slashing of curators is necessary, it can be handled through OpenGov. | |
This reduces friction in curator management. |
this is a bit specific to Polkadot, but the rest looks good
@@ -221,9 +224,12 @@ pub mod pallet { | |||
#[pallet::constant] | |||
type BountyDepositPayoutDelay: Get<BlockNumberFor<Self, I>>; | |||
|
|||
/// Bounty duration in blocks. | |||
/// Optional bounty duration in blocks. |
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.
/// Optional bounty duration in blocks. | |
/// The period that starts when a curator is approved, during which they must execute or | |
/// update the bounty via `extend_bounty_expiry`. If missed, the bounty expires, and the | |
/// curator may be slashed. |
/// If `None`, bounties stay active indefinitely, removing the need for | ||
/// `extend_bounty_expiry` and restricting curator slashing to OpenGov. |
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.
/// If `None`, bounties stay active indefinitely, removing the need for | |
/// `extend_bounty_expiry` and restricting curator slashing to OpenGov. | |
/// If `None`, bounties stay active indefinitely, removing the need for | |
/// `extend_bounty_expiry`. |
OpenGov part is specific to the runtime e
… is None
Description
Fixes polkadot-fellows/runtimes#509
The Bounties expiration and renewal heavily depends on manual interactions through UI. This PR refactors the duration of the bounty to be an optional configuration constant. If set to None, bounties remain active indefinitely, removing the need for calling
extend_bounty_expiry
and preventing automatic curator slashing for inactivity, which often penalises unnecessarily.Integration
Remove BountyUpdatePeriod
Review Notes
Modifies how bounty expiry is handled
🔍 Code Diff Summary
Checklist
T
required)