Documentation
¶
Overview ¶
Package changesets provides reusable MCMS changesets.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AmountsToTransfer ¶
type FireDrillConfig ¶
type FireDrillConfig struct {
TimelockCfg cldfproposalutils.TimelockConfig `json:"timelockCfg"`
Selectors []uint64 `json:"selectors,omitempty"`
}
FireDrillConfig selects chains and MCMS timelock routing for a signing fire drill.
func (FireDrillConfig) ResolvedSelectors ¶
func (cfg FireDrillConfig) ResolvedSelectors(e cldf.Environment) []uint64
ResolvedSelectors returns the chain selectors VerifyPreconditions and the fire-drill operation will use. When cfg.Selectors is empty, it defaults to every Solana chain in the environment followed by every EVM chain.
type FundMCMSignerConfig ¶
type FundMCMSignerConfig struct {
AmountsPerChain map[uint64]AmountsToTransfer
}
type FundMCMSignersChangeset ¶
type FundMCMSignersChangeset struct{}
FundMCMSignersChangeset is a changeset that funds the MCMS signers on each chain. It will find the signer PDA for the proposer, canceller and bypasser MCM as well as the timelock signer PDA and send the amount of SOL specified in the config to each of them.
func (FundMCMSignersChangeset) Apply ¶
func (f FundMCMSignersChangeset) Apply(e cldf.Environment, config FundMCMSignerConfig) (cldf.ChangesetOutput, error)
Apply funds the MCMS signers on each chain.
func (FundMCMSignersChangeset) VerifyPreconditions ¶
func (f FundMCMSignersChangeset) VerifyPreconditions(e cldf.Environment, config FundMCMSignerConfig) error
VerifyPreconditions checks if the deployer has enough SOL to fund the MCMS signers on each chain.
type GrantRoleTimelockSolana ¶
type GrantRoleTimelockSolana struct{}
GrantRoleTimelockSolana grants the given accounts access to the given role on the timelock
func (GrantRoleTimelockSolana) Apply ¶
func (t GrantRoleTimelockSolana) Apply( env cldf.Environment, cfg GrantRoleTimelockSolanaConfig, ) (cldf.ChangesetOutput, error)
func (GrantRoleTimelockSolana) VerifyPreconditions ¶
func (t GrantRoleTimelockSolana) VerifyPreconditions( env cldf.Environment, config GrantRoleTimelockSolanaConfig, ) error
type GrantRoleTimelockSolanaConfig ¶
type GrantRoleTimelockSolanaConfig struct {
Accounts map[uint64][]solana.PublicKey // chain selector to accounts mapping
Role timelockbindings.Role
MCMS *cldfproposalutils.TimelockConfig
}
type MCMSSignFireDrillChangeset ¶
type MCMSSignFireDrillChangeset struct{}
MCMSSignFireDrillChangeset creates an MCMS signing fire-drill proposal with noop operations per chain. It exercises signing and execution pipelines without mutating on-chain configuration.
func (MCMSSignFireDrillChangeset) Apply ¶
func (MCMSSignFireDrillChangeset) Apply(e cldf.Environment, cfg FireDrillConfig) (cldf.ChangesetOutput, error)
Apply builds the fire-drill proposal via the operations API (with force execute for repeatable drills).
func (MCMSSignFireDrillChangeset) VerifyPreconditions ¶
func (MCMSSignFireDrillChangeset) VerifyPreconditions(e cldf.Environment, cfg FireDrillConfig) error
VerifyPreconditions ensures each target chain exists and MCMS timelock state satisfies the configured action.