Parallel Universe
  • Learn
    • Introduction to PUT
    • Getting started with PUT
  • Architecture
    • What is a PUT Cluster?
    • Clusters
      • PUT Clusters
      • RPC Endpoints
      • Benchmark a Cluster
      • Performance Metrics
    • Consensus
      • Synchronization
      • Leader Rotation
      • Fork Generation
      • Managing Forks
      • Turbine Block Propagation
      • Commitment Status
      • Secure Vote Signing
      • Stake Delegation and Rewards
    • Validators
      • Overview
      • TPU
      • TVU
      • Blockstore
      • Gossip Service
      • The Runtime
  • CLI
    • Command-line Guide
    • Install the PUT Tool Suite
    • Command-line Wallets
      • Command Line Wallets
      • Paper Wallet
      • File System Wallet
      • Support / Troubleshooting
    • Using PUT CLI
    • Connecting to a Cluster
    • Send and Receive Tokens
    • Staking
    • Deploy a Program
    • Offline Transaction Signing
    • Durable Transaction Nonces
    • CLI Usage Reference
  • Developers
    • Get Started
      • Hello World
      • Local development
      • Rust program
    • Core Concepts
      • Accounts
      • Transactions
        • Overview
        • Versioned Transactions
        • Address Lookup Tables
      • Programs
      • Rent
      • Calling between programs
      • Runtime
    • Clients
      • JSON RPC API -1
      • JSON RPC API -2
      • JSON RPC API -3
      • Web3 JavaScript API
      • Web3 API Reference
      • Rust API
    • Writing Programs
      • Overview
      • Developing with Rust
      • Deploying
      • Debugging
      • Program Examples
      • FAQ
    • Native Programs
      • Overview
      • Sysvar Cluster Data
    • Local Development
      • PUT Test Validator
    • Backward Compatibility Policy
  • Validators
    • Running a Validator
    • Getting Started
      • Validator Requirements
    • Voting Setup
      • Starting a Validator
      • Vote Account Management
      • Staking
      • Monitoring a Validator
      • Publishing Validator Info
      • Failover Setup
      • Troubleshooting
    • Geyser
      • Geyser Plugins
  • Staking
    • Staking on PUT
    • Stake Account Structure
  • Integrations
    • Add PUT to Your Exchange
    • Retrying Transactions
  • Library
    • Introduction
    • Token Program
    • Associated Token Account Program
    • Memo Program
    • Name Service
    • Feature Proposal Program
    • NFT Program
      • Overview
      • Interface
      • Usage Guidelines
        • Create a new NFT-Mint
        • Cast NFT
        • Transfer an NFT
        • Change account status
        • Permission settings
        • Query Interface
        • Continuous casting
        • Change the Mint attribute
      • Operation Overview
        • Create a new NFT-Mint
        • Transfer NFT
        • Destroy
        • Freeze NFT accounts
        • Update
    • PUT multi-sign program
      • Overview
      • Interface
      • Usage Guidelines
        • Create a multi-signature account
        • Create a proposal account
        • Vote proposal
        • Verify Proposal
        • Add-singer
        • Remove-signer
      • Operation Overview
        • Create a multi-signature account
        • Create a proposal account
        • Vote
        • Verify
        • Add-singer
        • Remove-signer
  • PUT Privacy Policy
Powered by GitBook
On this page
  1. Library
  2. PUT multi-sign program
  3. Usage Guidelines

Verify Proposal

$ ppl-sig verify --proposal 6NuA13zJvhA7GU86LzzrhwTVYCbkKqzvpwHT
zkejGDPg
verifying proposal 6NuA13zJvhA7GU86LzzrhwTVYCbkKqzvpwHTzkejG
DPg passed 

Signature: 5KeUaAf8hvjeiRSrVUyRYXKhYTy2TfTft5s3y6yi5TbTUgguFf6WdEQ3crHkDVfkmuToVB95nA6f62osWD2krnht

The proposal can be verified using the verify instruction after the proposal is approved, and the proposal account will be deleted after the verification is passed.

This step corresponds to step 9 of the above multi-signature process and occurs in the second Alice call.

The proposal validation interface must be called by a custom contract across contracts to serve its intended purpose, never call the verify instruction offline.

For multi-signature interfaces, the contract developer, should execute the business logic of the interface after a successful verify call.

To prevent proposal account stacking, proposal accounts will be deleted after verify successfully.

To view information on the proposal account after successful Verify.

$ ppl-sig proposal-info 6NuA13zJvhA7GU86LzzrhwTVYCbkKqzvpwH
TzkejGDPg

thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: ClientError { request: None, kind: RpcError(ForUser("AccountNotFound: pubkey=6NuA13zJvhA7GU86LzzrhwTVYCbkKqzvpwHTzkejGDPg")) }', multi-sig/cli/src/main.rs:421:81
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

As you can see, the proposal account is no longer available for searching.

PreviousVote proposalNextAdd-singer

Last updated 2 years ago