Add batch PGAS claims - #75
Draft
georgepisaltu wants to merge 1 commit into
Draft
Conversation
Signed-off-by: georgepisaltu <george.pisaltu@parity.io>
gui1117
approved these changes
Sep 1, 2026
| /// Must not exceed [`MAX_PGAS_BATCH_CLAIMS`] or the largest per-collection claim | ||
| /// count; both asserted in `integrity_test`. | ||
| #[pallet::constant] | ||
| type MaxPgasClaimsPerBatch: Get<u32>; |
Contributor
There was a problem hiding this comment.
we could add in the doc that this value must be constant for the runtime. As it defines the transaction type and is benchmarked against.
Just so that it doesn't end up in pallet-parameters by mistake.
We could also enhance the code so that it supports run-time change.
| ValidTransaction::with_tag_prefix("Pgas:Claim").priority(tx_priority::USER_DEFAULT); | ||
| for (ca, slot_index) in cas.iter().zip(slot_indices.iter()) { | ||
| let alias = ca.alias; | ||
| // Pool-hygiene pre-check; dispatch re-checks authoritatively. |
Contributor
There was a problem hiding this comment.
it is more than just a pool hygiene it prevents already claimed alias to spam the chain itself with unpaid failing transactions.
|
|
||
| let amount = T::PgasClaimAmount::get(); | ||
| T::Fungibles::mint_into(T::PgasAssetId::get(), target, amount) | ||
| .map_err(|_| Error::<T>::PgasMintFailed)?; |
Contributor
There was a problem hiding this comment.
if it fails, then the transaction can be re-submitted on and on. But I think we can assume that it doesn't happen.
PgasClaimAmount should be higher than E.D. and PGAS is sufficient.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR adds batch claims for PGAS in
pallet-pgas. There is only one proof, verified in multiple contexts using existing multi io primitives. This is ok since the claim is happening in a single account and each claim will have its own context. The benchmark only measures the worst case for now and always charges the worst case.For AH, 5 claims should be enough to set an alias account.