Skip to content

Included revive 0.7.0#467

Merged
olanod merged 3 commits intodevfrom
feature/include_revive0.7
Sep 25, 2025
Merged

Included revive 0.7.0#467
olanod merged 3 commits intodevfrom
feature/include_revive0.7

Conversation

@johandroid
Copy link
Contributor

Pending to know if needed a new instance for pallet_assets::Instance3 as done in asset-hub-westend

…allet_assets::Instance3 as done in asset-hub-westend
Copy link
Member

@olanod olanod left a comment

Choose a reason for hiding this comment

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

Awesome! Now some minor changes.

}

pub type TrustBackedAssetsInstance = pallet_assets::Instance1;
// pub type PoolAssetsInstance = pallet_assets::Instance3; // Should be created a new instance for this (Instance3)?
Copy link
Member

Choose a reason for hiding this comment

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

✂️

pub const ChainId: u64 = 2281;
}

pub type TrustBackedAssetsInstance = pallet_assets::Instance1;
Copy link
Member

Choose a reason for hiding this comment

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

Let's call it just KreivoAssets as we don't have other instances and we don't have "TrustBackedAssets"

type RuntimeMemory = ConstU32<{ 128 * 1024 * 1024 }>;
type PVFMemory = ConstU32<{ 512 * 1024 * 1024 }>;
type UnsafeUnstableInterface = ConstBool<false>;
type UploadOrigin = EnsureSigned<Self::AccountId>;
Copy link
Member

Choose a reason for hiding this comment

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

Initially should be permissioned so let's do the same as contrats

pub type Contracts = pallet_contracts;
#[runtime::pallet_index(81)]
pub type ContractsStore = pallet_contracts_store;
#[runtime::pallet_index(90)]
Copy link
Member

Choose a reason for hiding this comment

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

82 should be fine so we use the 80 range for anything contract related

type WeightInfo = pallet_revive::weights::SubstrateWeight<Self>;
type Precompiles = (
ERC20<Self, InlineIdConfig<0x120>, KreivoAssetsInstance>,
ERC20<Self, InlineIdConfig<0x320>, PoolAssetsInstance>,
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
ERC20<Self, InlineIdConfig<0x320>, PoolAssetsInstance>,

pub const ChainId: u64 = 2281;
}

pub type PoolAssetsInstance = pallet_assets::Instance1;
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
pub type PoolAssetsInstance = pallet_assets::Instance1;

@olanod olanod merged commit c738df2 into dev Sep 25, 2025
5 of 11 checks passed
@olanod olanod deleted the feature/include_revive0.7 branch September 25, 2025 15:06
pandres95 added a commit that referenced this pull request Oct 27, 2025
* feat(kreivo-runtime): add `Listings` and `ListingsCatalog`

* feat(kreivo-runtime): bump version

* fix(kreivo-runtime): misconfiguration in imports (both on non-benchmarks and benchmarks features

* fix(kreivo-runtime): incorrect use of `AsSignedByCommunity` origin to match a signed origin with a community

* chore: update dependencies / add `frame-contrib-traits`, `pallet-listings` / move `pallet-payments` to `frame-contrib`

* feat(apis): define `ListingsAPI`

* fix(kreivo-runtime): update configs for listings and payments

* chore: fmt and feature-propagate cargo files

* chore: Bump to `stable2409-6` (#451)

* chore: update deps

* chore: update CI checks

* chore: modify pallet mock and runtime configurations to reflect changes in PSDK.

* fix: misconfigured implementation of benchmark helpers for listings pallets

* feat(kreivo-runtime): configure pallet orders (#452)

* feat: Setup `GenesisConfig` on `pallet-communities-manager` (#453)

* chore(pallet-communities-manager): use unified `frame-contrib-traits` crate

* feat(pallet-communities): support serde for `DecisionMethod` + remove `sp-std`

* feat(pallet-communities-manager): add `GenesisConfig`/`GenesisBuilder` + remove `sp-std`

* feat(runtime-common): remove `sp-std`

* feat(runtime-constants): add `alice()` genesis helper + remove `sp-std`

* feat(kreivo-runtime): setup `communitiesManager` genesis + remove `sp-std`

* chore: apply Cargo.lock changes

* feat: Implement `Listings` in _Kreivo APIs_ (#454)

* feat(virto-common): define `listings` types to a common place.

* feat(kreivo-apis): refactor library structure / implement listings APIs.

* feat(kreivo-apis): configure `kreivo_apis::Config`

* chore(kreivo-apis): apply `T::Listings::clear_price` to chain extensions (#455)

* chore: Unify usage of `frame-contrib-traits` (#456)

* chore(pallet-communities): replace mentions to `fc-traits-memberships` with `frame-contrib-traits` + taplo fmt

* chore(kreivo-runtime): replace mentions to `fc-traits-*` with unified `frame-contrib-traits` + taplo fmt

* chore: taplo fmt

* fix(pallet-communities-manager): create memberships store collection whenever it doesn't exist.

* feat: Pallet Contracts Store (#450)

* feat(contracts-store): add `pallet-contracts-store`, full path, and tests. Missing benchmarks.

* feat(kreivo-runtime): configure `pallet-contracts-store`

* fix(kreivo-runtime): make clippy happy

* chore(pallet-contracts-store): expose `CONTRACT_MERCHANT_ID` const.

* chore(kreivo-runtime): implement `MerchantIdInfo` for runtime.

* fix(runtime-constants): remove unused `EPOCH_DURATION_IN_SLOTS`.

* feat(pallet-contracts-store): split contract instance info with license item, so the license holder preserves it.

* chore(kreivo-runtime): minor improvements on usability and dev environment

- implement runtime `ContractApis` 🛠️
- use `ContractsStore::maybe_merchant_id` 🪪
- load first community with some balance 🤑

* feat(kreivo-apis): implement `item_transfer` and `item_creator_transfer` methods on `ListingsItemsAPI`.

* fix: inventory attributes weren't being retrieved.

- chore(Cargo): update deps
- chore(kreivo-apis): enable logging to help on debugging calls for chain extensions.

* change(chain-spec-generator): update paseador's chainspec to re-genesis.

* chore: move `pallet-communities` away to `frame-contrib`

* fix(kreivo-runtime): minor improvements + enable XCM to receive messages in Paseo

* chore: make clippy happy

* change(kreivo-runtime): runtime apis refactor #1

* fix(.github): invalid workflow format

* fix(kreivo-runtime): lower deposit amount for `pallet-proxy` (#460)

Closes #459

* feat: Bump to `stable2503` (#457)

* chore(pallet-communities-manager): adjust config to match `stable2503` requirements

* chore(pallet-contracts-store): adjust config to match `stable2503` requirements + include local copy of `pallet-contracts-fixtures`

* chore(kreivo-runtime): adjust config to match `stable2503` requirements + include local copy of `pallet-contracts-fixtures`

* fix: fmt

* fix(chain-spec-generator): correct genesis preset name for `local` config

* chore: version bump

* chore: update dependencies

* fix(.github): add wasm32 target to clippy job in check workflow.

* chore(kreivo-runtime): add migrations

* chore(.github): add try-runtime to release workflow on paseo

* force CI

* I give up! Let's run this fucking CI step on each commit.

* ....

* fix(.github): invalid artifact path

* Update check-migration.yml

* Update check-migration.yml

* fix(.github): get snap from our live node

* fix(.github): test flattenning location of runtime

* fix(.github): test flattenning location of runtime

* feat(.github): add concurrency and cancel-in-progress.

* feat(.github): add checks for short benchmarks

* feat(.github): use `frame-omni-bencher` for short benchmarks

* fix(kreivo-runtime): adjust benchmarking configurations for `pallet_communities`

* fix(.github): use --release to build `frame-omni-bencher` / add build deps

* fix(.github): change uri for try-runtime

* fix(kreivo-runtime): use separate `dev` genesis that doesn't include communitiesManager, to ensure benchmarks remain untouched.

* fix(kreivo-runtime): adjust benchmark configs for `CommunityMemberships` and `KreivoCollective`

* change(pallet-communities-manager): charge accounts to enable them create memberships on benchmarks.

* fix(kreivo-runtime): simplify `CommunityMemberships` configuration

* feat(kreivo-runtime): adjust benchmarking settings within each config module / update deps / setup benchmarking config for tx payments pallets.

* feat(kreivo-runtime): adjust benchmarking settings for xcm adapters

* fix(kreivo-runtime): make clippy happy

* chore(.github): download `frame-omni-bencher` instead of building it. This will reduce CI times.

* chore(Cargo): remove allow all clippy

* chore(Cargo): update documentation of `pallet-contracts-store`

* feat(kreivo-runtime): new pallet pass tx extension (#461)

* chore(Cargo): update dependencies

* chore(kreivo-runtime): update `pallet-pass` config, and add `PassAuthenticate` tx extension

* chore(kreivo-runtime): apply fix from `frame-contrib#47`

* chore(kreivo-runtime): allow communities to use `Scheduler`

Closes #369

* chore(.github): add zepter checks

* chore(Cargo): restore to 0.16.0

* fix(kreivo-runtime): incorrectly set `ScheduleOrigin`

* make clippy happy

* chore(kreivo-runtime): update benchmark configs

* chore(kreivo-runtime): bump spec version

* chore(kreivo-runtime): update deps to enable better logging

* chore(kreivo-runtime): update deps and use `RelaychainData` as block number provider for pallets.

* chore(kreivo-runtime): update deps and use `RelaychainData` as block number provider for pallets.

* chore: test ramp-up of ephemeral vm for benchmarking / test 1

* chore: test ramp-up of ephemeral vm for benchmarking / test 2

* chore: test ramp-up of ephemeral vm for benchmarking / test 2 - remove test file

* [ci] calculate weights

* feat(pallet-contracts-store): add benchmarking setup

* feat(kreivo-runtime): define benchmarks for new pallets

* fix(pallet-contracts-store): prepare publisher minting system balance of MAX/2 to prevent overflow

* fix(kreivo-runtime): benchmarking setup

- ensure benchmarking instantiator is any signer, with a given merchant
- update deps
- adjust listings benchmarking config

* fix(kreivo-runtime): upgrade deps / configure benchmark settings for Orders

TODO: Fix `PaymentId` @olanod

* fix(kreivo-runtime): define `pallet_payment_indices` to handle subindex processing for `VirtoPaymentId` using temporary storage for the payment index on a single block. / update deps

* change(.github): ALWAYS create the PR to avoid losing the runner's work.

* fix(justfile): output logs file using quotes to prevent incorrectly handling from nushell

* fix(justfile): `do -i` instead of `do --ignore-errors` for failsafe on newer versions of nushell

* chore(kreivo-runtime): re-enable missing benchmarks

* Benchmarking: Calculate weights for 4b4095e (#462)

* [ci] calculate weights

* chore(kreivo-runtime): adjust weight files

---------

Co-authored-by: pandres95 <2502577+pandres95@users.noreply.github.com>
Co-authored-by: Pablo Andrés Dorado Suárez <hola@pablodorado.com>

* chore(kreivo-runtime): migrate `GeneratePaymentId` to `pallet_payment_indices`

* chore: Calculate weights for `034560da50486ba9908525e1af66c7215840bb71` (#463)

* [ci] calculate weights

* chore(kreivo-runtime): adjust weights

* chore(kreivo-runtime): update deps

* chore(kreivo-runtime): update xcm weights

* feat(.github): change benchmarking PR's titles to be conventional

---------

Co-authored-by: pandres95 <2502577+pandres95@users.noreply.github.com>
Co-authored-by: Pablo Andrés Dorado Suárez <hola@pablodorado.com>

* chore: bump spec version

* fix(kreivo-runtime): Incorrect implementation of BlockHashChallenger. It must be blake2_256(cx || xtc), not blake2_256((cx, xtc).encode())

* feat: contract extensions for `Memberships` (#465)

* cargo(workspace): update deps

* chore(kreivo-apis): apply extensions for memberships (and metadata for listings' inventories and items).

* fix(kreivo-runtime): adjust configuration to match latest version of `frame_contrib`

* fix(kreivo-runtime): make clippy happy

* feat(kreivo-runtime): introduce `pass-substrate-keys` as authenticator (#466)

* feat(kreivo-runtime): introduce `pass-substrate-keys` as authenticator

- Use `SubstrateKey` authenticator for benchmarking tests.

* feat(kreivo-runtime): use schnorrkel and rand to generate a signer (and signature) to remediate the lack of support for `full-crypto` feature

Note: We should report this issue to psdk

* feat(kreivo-runtime): implement an own Rng to handle key generation and signature nonce generation (in the context of pallet-pass benchmarks)

* chore(kreivo-runtime): rollback `BlockNumberProvider` for `Scheduler` (and dependent pallets) to use `System` (the parachain block number).

* chore(kreivo-runtime): bump version

* fix(zombienet): use `rpc_port` instead of `ws_port`

* feat(kreivo-runtime): update  deps + add black-hole

* chore(kreivo-runtime): version bump

* fix(kreivo-runtime): remove feature-gateway for pallet-black-hole (too complicated as `frame_support::runtime` is not the only one that needs to have things sorted out).

* fix(kreivo-runtime): wrap the memberships adapter with the respective `OnMembershipAssgigned` hook

whoops!

* fix(kreivo-runtime): correctly copy memberships well-known attributes from the item in the memberships collection to the item in the community collection

oops (i did it again)!

* fix(kreivo-runtime): ensure proper item deposit for memberships on test when `runtime-benchmarks` feature enabled

* chore: update to `stable2506` and latest `frame-contrib`/`pass-authenticators`

* chore(ci): modify `checks` to use `stable` instead of `nightly`.

- This is to ensure `pallet-revive-fixtures` are built

* fix: ensure tests and clippy pass

* fix(kreivo-runtime): add `RelayParentOffsetApi`

* fix(kreivo-runtime): set `RelayParentOffset` to 0. Add missing import to `Get` trait

* fix(kreivo-runtime): allow reusing rng in pass benchmarks

* fix(zombienet): configure zombienet appropriately for async backing.

* fix(cargo): update package url in the manifest

* fix(ci): invalid definition for benchmarking.yml

* feat(kreivo-runtime): first try to reduce blocktime to 3 seconds.

* fix(kreivo-runtime): forgot to update `SLOT_DURATION` in `aura` configuration.

* feat(kreivo-runtime): adjust configuration for block weight. Bump to 3 blocks per slot.

* feat(kreivo-runtime): update deps + adjust config / set block production velocity for both testnet and production

* Included revive 0.7.0 (#467)

* Included revive 0.7.0, pending to know if needed a new instance for pallet_assets::Instance3 as done in asset-hub-westend

* Requested changes applied

* Not included precompiles for this integration.

---------

Co-authored-by: Lex Luthor <johan@nulo.network>

* Track PolkadotSDK version + script to compare versions

* feat: migration to `stable2509` (#468)

* feat: Migrated to stable2509 🎉

* Fixed error in test 🚀

* chore(.github): Add custom image that includes the needed toolkit to build the runtime.

* fix(workspace): missing feature propagation / revert `rand_code` to 0.6.4

---------

Co-authored-by: Lex Luthor <johan@nulo.network>
Co-authored-by: Pablo Andrés Dorado Suárez <hola@pablodorado.com>

* chore(kreivo-runtime): set `RELAY_PARENT_OFFSET` of 1.

* chore(kreivo-runtime): prepare constants for async backing and elastic scaling (offset still disabled for now).

* chore(kreivo-runtime): set `RELAY_PARENT_OFFSET=1` only when not in `try-runtime`

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Johan Alexis Duque Cadena <johan.duque@gmail.com>
Co-authored-by: Lex Luthor <johan@nulo.network>
Co-authored-by: Daniel Olano <me@olanod.com>
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.

2 participants