Repository navigation
CHIP-0063: Minimum Fee for Block Creation - #219
razorred14 wants to merge 4 commits into
Conversation
|
This proposal is ready for initial CHIP-editor feedback. Could a CHIP editor please review its category, scope, and specification? |
|
The reference prototype at Chia-Network/chia-blockchain#21328 has now been revised to conform to this proposal. Fee filtering occurs only during candidate-block construction in both generator paths; mempool admission and gossip remain unchanged. The signed implementation commit is Chia-Network/chia-blockchain@95fc22b. |
|
Some discussion of economic tradeoffs should go into this. With a floor which results in roughly $200/day cost for someone making a dust storm farmers who use that value are potentially foregoing up to 5 cents worth of fees each time they make a block, although it's likely such things won't be in the mempool to begin with. |
|
This CHIP is now in Please leave your reviews here and feel free to comment in the #chips channel of our Discord. |
|
@razorred14 a couple comments in addition to what Bram already stated:
|
|
We'll hold a public discussion of this CHIP on September 30 at: See the #chips channel of our Discord for more details. |
|
The recording from our discussion about this CHIP is now available on YouTube: |
|
|
||
| ### Mempool behavior | ||
|
|
||
| The configured threshold MUST NOT be used to reject an otherwise valid transaction from the mempool solely because its fee is below `required_fee`. It MUST NOT prevent fetching or relaying such a transaction. Existing mempool capacity, replacement, validation, and anti-spam rules remain unchanged. |
There was a problem hiding this comment.
I seriously object to that premise. If I'm not farming it, I'm not relaying it either. Especially since neither cost nor fees can be calculated without running compute bombs from the mempool. The relay vector is what consistently knocks a bunch of low-end netspace offline.
There was a problem hiding this comment.
Maybe the mempool shouldn't even be a part of this CHIP? The goal of the CHIP seems to be mempool-agnostic, whereas its predecessor (CHIP-3) filtered transactions at the mempool level.
There was a problem hiding this comment.
@razorred14 what do you think about these mempool comments?
There was a problem hiding this comment.
@trgarrett what if by default it were only block creation but there is a config option to extend the min fee to the mempool? Would that resolve your concerns?
There was a problem hiding this comment.
@BrandtH22 I'm running a custom relay policy because I think gossiping CLVM-bombs is what is actually hurting the network right now. "MUST NOT" language in RFCs has a very specific history and interpretation, and I think it's not useful language in this context. If the CHIP doesn't acknowledge the real issues happening to nodes with relay policy, that's the author's prerogative. I just think taking absolutist statements that imply there is something wrong with fixing relay policy is the wrong approach.
I would prefer both a config option and softened language.
|
Mempool comments aside, this CHIP feels close to being ready. The next step is |
|
@razorred14 Do you have anything else you want to add to this CHIP? IIRC the cost structure might still be in the air? |
|
Still waiting on answers from him on questions I asked on Discord. |
|
Our current implementation uses We are also defaulting to Chia-Network/chia-blockchain#21649 In your |
Note
Low Risk
Documentation-only changes in the CHIPs repo; no runtime code, though CHIP-0063 describes optional full-node fee policy that would affect block building if implemented elsewhere.
Overview
This PR adds CHIP-0063 (Minimum Fee for Block Creation), a fast-track Process CHIP that replaces withdrawn CHIP-0003. The spec defines farmer-local
minimum_block_fee_per_cost(mojos per million CLVM cost) applied only during block construction, not at mempool admission or relay, so low-fee txs stay valid and propagatable.CHIP-0063 sets default
0(opt-in, no behavior change on upgrade), specifiesrequired_feevia ceiling division with safe integer math, requires startup validation of config, and outlines mempool, block-building, RPC labeling, tests, and security notes tied to chia-blockchain#21328.Also added is the author’s working draft
chip-razorred14-minimum-block-fee.md, which documents an alternate policy: default 4 mojos per CLVM cost when the key is absent, commentedinitial-config, and automatic expiry at 2027-11-03 based on peak transaction-block timestamp—contrasted explicitly against the opt-in0default in #21328.Reviewed by Cursor Bugbot for commit 2f83393. Bugbot is set up for automated code reviews on this repo. Configure here.