Skip to content

vm #166

@filip-parity

Description

@filip-parity

Existing zkVm available here as example for grooming this task:

/// Enables/Disables use ZK-VM for transact/call and create instructions.
function zkVm(bool enable) external pure;

Proposed Cheat Code for PVM

  • Function Name: pvmEnable
  • Signature:
function pvmEnable(bool enable) external pure;
  • Purpose: Enables or disables the PVM context for transact, call, and create instructions (TBD if more), allowing switching between PVM and EVM or other contexts during testing.
  • Parameters:
    • enable: Boolean to toggle PVM context (true for PVM, false for EVM or default context).
  • Example Usage:
// Contract to be deployed in different contexts
vmExt.pvmEnable(true);
new PolkaContract(1); // Deployed in PVM
new PolkaContract(2); // Deployed in PVM
vmExt.pvmEnable(false);
new PolkaContract(3); // Deployed in EVM
new PolkaContract(4); // Deployed in EVM

Please decide how to handle enabling pvm/evm as the pallet-revive support both VMs

Estimation: 10D

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions