Skip to content

Conversation

@olanod
Copy link
Contributor

@olanod olanod commented Jul 5, 2025

The Wish For Change in ref#539 approved the addition of the "BlackHole pallet" to the Kusama AssetHub runtime.

fc-pallet-black-hole is a simple pallet that periodically burns the balance of the pallet's account(the event horizon), a permissioned extrinsic is also included to dispatch signed calls from said account, it's configured to the general admin and will be specially useful for calling pallet revive's map_account to allow contracts and evm wallets send funds to the well-known address of the pallet.

@olanod olanod force-pushed the feat-pallet-black-hole branch 2 times, most recently from 368ca2f to 045aea9 Compare July 5, 2025 16:53
Copy link
Member

@pandres95 pandres95 left a comment

Choose a reason for hiding this comment

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

Good implementation! There are some things missing, though:

  • Add the pallet to the list of benchmarks.
  • Calculate Weights.
  • Add some Changelog.

@olanod olanod force-pushed the feat-pallet-black-hole branch from 045aea9 to dfb29a3 Compare July 5, 2025 17:02
@olanod
Copy link
Contributor Author

olanod commented Jul 5, 2025

/cmd bench --runtime asset-hub-kusama

@github-actions
Copy link

github-actions bot commented Jul 5, 2025

Sorry, only fellows can run commands.

Copy link
Contributor

@bkchr bkchr left a comment

Choose a reason for hiding this comment

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

Don't want to play the bad boy here, but why isn't that just a function of the balances pallet?

@olanod
Copy link
Contributor Author

olanod commented Jul 5, 2025

Don't want to play the bad boy here, but why isn't that just a function of the balances pallet?

An agile Kusama experiment? not bloating the PolkadotSDK with features that might not be used in Polkadot or the general public? Leave room for future more interesting experiments like "hawking radiation" to address the burn redirect of WFC#437? I personally find it interesting to have burn related functionality concentrated in one place with a fun concept that is easy to understand :)

@bkchr
Copy link
Contributor

bkchr commented Jul 6, 2025

An agile Kusama experiment? not bloating the PolkadotSDK with features that might not be used in Polkadot or the general public?

We are talking about one dispatchable and we already had discussed this some years ago, because people thought you could use the all zeros address for this. So, yes I think we should add it.

Ahh lol, we actually already have it. Not sure why I did not have seen this yesterday.

I personally find it interesting to have burn related functionality concentrated in one place with a fun concept that is easy to understand :)

For that we should really use contracts and also not have funds send to something else where people think that they burned it.

@ggwpez
Copy link
Member

ggwpez commented Jul 7, 2025

/cmd bench --runtime asset-hub-kusama --pallet fc_pallet_black_hole

@olanod
Copy link
Contributor Author

olanod commented Jul 8, 2025

Ahh lol, we actually already have it. Not sure why I did not have seen this yesterday.

Also didn't see this extrinsic before 😅 But still it's not what we want, the main selling point in the proposal was the constant auto burning from the well known address and dispatching from said address without requiring root. E.g. I have a use case where I want to the dark hole address to create an nft collection where each item is priced in KSM, buyers pay the owner of the collection(the event horizon) and earnings are later burned. With root+scheduler+the burn extrinsic this stuff can be done but way more painful. To integrate well with contracts the best would be to map the 0 address to the pallet with a special mapper, it just can't be done yet as the relevant trait is sealed but that can be changed.

@pandres95
Copy link
Member

/cmd bench --runtime asset-hub-kusama --pallet fc_pallet_black_hole

@github-actions
Copy link

Command "bench --runtime asset-hub-kusama --pallet fc_pallet_black_hole" has started 🚀 See logs here

@github-actions
Copy link

Command "bench --runtime asset-hub-kusama --pallet fc_pallet_black_hole" has failed ❌! See logs here

@bkchr
Copy link
Contributor

bkchr commented Jul 23, 2025

@olanod can you please also copy the pallet to this repo. This ensures we are not blocked by this when upgrading the SDK version.

@olanod
Copy link
Contributor Author

olanod commented Jul 23, 2025

@olanod can you please also copy the pallet to this repo. This ensures we are not blocked by this when upgrading the SDK version.

I see this small pallet as the PoC for having external pallets from token-holder-approved contributors in the runtime, more pallets are coming from frame-contrib(communities+referenda-tracks) so the fun exercise here should be about finding good ways to cooperate and move things forward knowing there might be this kind of blockers but luckily it should be a smooth process with proper communication in place :)

@olanod olanod requested a review from bkchr August 25, 2025 11:53
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.

4 participants