Documentation
¶
Index ¶
- func ConfigureCantonCommitteeVerifierForLanesFromTopology(...) cldf.ChangeSetV2[v2cs.ConfigureChainsForLanesFromTopologyConfig]
- func ConfigureCantonTokensForTransfers(mcmsRegistry *ccipchangesets.MCMSReaderRegistry) cldf.ChangeSetV2[cciptokens.ConfigureTokensForTransfersConfig]
- func DeployCantonTokenExpansion() cldf.ChangeSetV2[cciptokens.TokenExpansionInput]
- type CantonCSDeps
- type ConfigureGlobalConfig
- type ConfigureGlobalConfigConfig
- type DeployAndConfigureMCMS
- type DeployAndConfigureMCMSConfig
- type DeployAndConfigureMCMSParams
- type DeployBurnMintTokenPool
- type DeployBurnMintTokenPoolConfig
- type DeployCCIPChainContractsFromFactory
- type DeployCCIPChainContractsFromFactoryConfig
- type DeployCCIPFactory
- type DeployCCIPFactoryConfig
- type DeployCCIPFactoryParams
- type DeployCCVFromFactory
- type DeployCCVFromFactoryConfig
- type DeployChainContracts
- type DeployChainContractsConfig
- type DeployCoin
- type DeployCoinConfig
- type DeployFactoryAndSetOwnerToMCMS
- type DeployFactoryAndSetOwnerToMCMSConfig
- type DeployLockReleaseTokenPool
- type DeployLockReleaseTokenPoolConfig
- type DeployRMNFromFactory
- type DeployRMNFromFactoryConfig
- type GenerateEDSConfig
- type MCMSConfigParams
- type MCMSRoleConfigParams
- type MCMSTimelockConfig
- type SetFactoryOwnerToMCMS
- type SetFactoryOwnerToMCMSConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConfigureCantonCommitteeVerifierForLanesFromTopology ¶
func ConfigureCantonCommitteeVerifierForLanesFromTopology( committeeVerifierContractRegistry *ccipadapters.CommitteeVerifierContractRegistry, chainFamilyRegistry *ccipadapters.ChainFamilyRegistry, mcmsRegistry *ccipchangesets.MCMSReaderRegistry, ) cldf.ChangeSetV2[v2cs.ConfigureChainsForLanesFromTopologyConfig]
ConfigureCantonCommitteeVerifierForLanesFromTopology is Run 2: Canton CommitteeVerifier lane configure only. Emits mcms-ccv timelock proposals; does not configure CCIP core contracts.
func ConfigureCantonTokensForTransfers ¶
func ConfigureCantonTokensForTransfers( mcmsRegistry *ccipchangesets.MCMSReaderRegistry, ) cldf.ChangeSetV2[cciptokens.ConfigureTokensForTransfersConfig]
ConfigureCantonTokensForTransfers configures Canton token pools for cross-chain transfers and emits one MCMS timelock proposal against mcms-ccip (ccipOwner). The proposal may include TAR registration, rate limiter deploys (via ccip factory), and token pool ApplyChainUpdates.
Run after DeployCantonTokenExpansion when pools are deployed and lane configure has completed.
func DeployCantonTokenExpansion ¶
func DeployCantonTokenExpansion() cldf.ChangeSetV2[cciptokens.TokenExpansionInput]
DeployCantonTokenExpansion deploys Canton token pools (and optionally resolves token refs) and emits one MCMS timelock proposal against mcms-ccip (ccipOwner).
Run after DeployCCIPChainContractsFromFactory and Run 1 lane configure. Omit TokenTransferConfig from per-chain input for deploy-only; use ConfigureCantonTokensForTransfers to wire remote lanes, rate limiters, and TAR registration for transfers.
Types ¶
type CantonCSDeps ¶
type ConfigureGlobalConfig ¶
type ConfigureGlobalConfig struct{}
func (ConfigureGlobalConfig) Apply ¶
func (d ConfigureGlobalConfig) Apply(e cldf.Environment, config CantonCSDeps[ConfigureGlobalConfigConfig]) (cldf.ChangesetOutput, error)
func (ConfigureGlobalConfig) VerifyPreconditions ¶
func (d ConfigureGlobalConfig) VerifyPreconditions(e cldf.Environment, config CantonCSDeps[ConfigureGlobalConfigConfig]) error
type ConfigureGlobalConfigConfig ¶
type ConfigureGlobalConfigConfig struct {
InstanceAddress contracts.InstanceAddress
// RawInstanceAddress is the "instanceId@partyId" format needed for MCMS proposals.
RawInstanceAddress string
DestChainUpdates []common.DestChainConfigArgs
SourceChainUpdates []common.SourceChainConfigArgs
TimelockConfig *MCMSTimelockConfig
}
ConfigureGlobalConfigConfig holds the parameters for ConfigureGlobalConfig changeset.
type DeployAndConfigureMCMS ¶
type DeployAndConfigureMCMS struct{}
func (DeployAndConfigureMCMS) Apply ¶
func (d DeployAndConfigureMCMS) Apply(e cldf.Environment, config CantonCSDeps[DeployAndConfigureMCMSConfig]) (cldf.ChangesetOutput, error)
func (DeployAndConfigureMCMS) VerifyPreconditions ¶
func (d DeployAndConfigureMCMS) VerifyPreconditions(e cldf.Environment, config CantonCSDeps[DeployAndConfigureMCMSConfig]) error
type DeployAndConfigureMCMSConfig ¶
type DeployAndConfigureMCMSConfig struct {
Params DeployAndConfigureMCMSParams `json:"params" yaml:"params"`
}
type DeployAndConfigureMCMSParams ¶
type DeployAndConfigureMCMSParams struct {
OwnerParty string `json:"ownerParty" yaml:"ownerParty"`
InstanceID string `json:"instanceID,omitempty" yaml:"instanceID,omitempty"`
ChainID int64 `json:"chainID" yaml:"chainID"`
Qualifier string `json:"qualifier,omitempty" yaml:"qualifier,omitempty"`
MinDelay time.Duration `json:"minDelay" yaml:"minDelay"`
BlockedFunctions []mcmsbindings.BlockedFunction `json:"blockedFunctions" yaml:"blockedFunctions"`
InitialConfig MCMSConfigParams `json:"initialConfig" yaml:"initialConfig"`
RoleConfigs []MCMSRoleConfigParams `json:"roleConfigs" yaml:"roleConfigs"`
}
type DeployBurnMintTokenPool ¶
type DeployBurnMintTokenPool struct{}
func (DeployBurnMintTokenPool) Apply ¶
func (d DeployBurnMintTokenPool) Apply(e cldf.Environment, config CantonCSDeps[DeployBurnMintTokenPoolConfig]) (cldf.ChangesetOutput, error)
func (DeployBurnMintTokenPool) VerifyPreconditions ¶
func (d DeployBurnMintTokenPool) VerifyPreconditions(e cldf.Environment, config CantonCSDeps[DeployBurnMintTokenPoolConfig]) error
type DeployBurnMintTokenPoolConfig ¶
type DeployBurnMintTokenPoolConfig struct {
CcipOwner string
PoolOwner string
InstrumentId splice_api_token_holding_v1.InstrumentId
Decimals int64
// Optional explicit instance ID for the pool.
// If empty, deploy operation generates one.
InstanceID string
// Qualifier is optional (e.g. token symbol) for AddressRef and idempotency.
Qualifier string
// Optional; defaults to empty. PoolReceiveContext can be set for receive context.
PoolReceiveContext splice_api_token_metadata_v1.ChoiceContext
// Optional; defaults to 24h RelativeHours. TransferTimeout for the pool.
TransferTimeout burnminttokenpool.TransferTimeout
// Optional; defaults to empty map.
RemoteChainConfigs map[types.NUMERIC]burnminttokenpool.RemoteChainConfig
// Optional; defaults to empty map.
TokenTransferFeeConfigs map[types.NUMERIC]burnminttokenpool.TokenTransferFeeConfig
// Optional; zero-value deps if not provided.
Deps burnminttokenpool.BurnMintTokenPoolDeps
// If set, the pool is registered with this TokenAdminRegistry (ProposeAdministrator, AcceptAdminRole, SetPool) in the same changeset.
TokenAdminRegistryInstanceAddress contracts.InstanceAddress
}
DeployBurnMintTokenPoolConfig is the config for deploying a BurnMintTokenPool. If TokenAdminRegistryInstanceAddress is set, the pool is also registered with that TAR in the same changeset.
type DeployCCIPChainContractsFromFactory ¶
type DeployCCIPChainContractsFromFactory struct{}
func (DeployCCIPChainContractsFromFactory) Apply ¶
func (d DeployCCIPChainContractsFromFactory) Apply(e cldf.Environment, config CantonCSDeps[DeployCCIPChainContractsFromFactoryConfig]) (cldf.ChangesetOutput, error)
func (DeployCCIPChainContractsFromFactory) VerifyPreconditions ¶
func (d DeployCCIPChainContractsFromFactory) VerifyPreconditions(e cldf.Environment, config CantonCSDeps[DeployCCIPChainContractsFromFactoryConfig]) error
type DeployCCIPChainContractsFromFactoryConfig ¶
type DeployCCIPChainContractsFromFactoryConfig struct {
OwnerParty string `json:"ownerParty" yaml:"ownerParty"`
CCIPOwnerParty string `json:"ccipOwnerParty" yaml:"ccipOwnerParty"`
MinDelay time.Duration `json:"minDelay,omitempty" yaml:"minDelay,omitempty"`
Description string `json:"description,omitempty" yaml:"description,omitempty"`
Params sequences.DeployChainContractsParams
}
type DeployCCIPFactory ¶
type DeployCCIPFactory struct{}
func (DeployCCIPFactory) Apply ¶
func (d DeployCCIPFactory) Apply(e cldf.Environment, config CantonCSDeps[DeployCCIPFactoryConfig]) (cldf.ChangesetOutput, error)
func (DeployCCIPFactory) VerifyPreconditions ¶
func (d DeployCCIPFactory) VerifyPreconditions(e cldf.Environment, config CantonCSDeps[DeployCCIPFactoryConfig]) error
type DeployCCIPFactoryConfig ¶
type DeployCCIPFactoryConfig struct {
Params DeployCCIPFactoryParams `json:"params" yaml:"params"`
}
type DeployCCIPFactoryParams ¶
type DeployCCIPFactoryParams struct {
OwnerParty string `json:"ownerParty" yaml:"ownerParty"`
MCMSParty string `json:"mcmsParty,omitempty" yaml:"mcmsParty,omitempty"`
InstanceID string `json:"instanceID,omitempty" yaml:"instanceID,omitempty"`
Qualifier string `json:"qualifier,omitempty" yaml:"qualifier,omitempty"`
}
type DeployCCVFromFactory ¶
type DeployCCVFromFactory struct{}
func (DeployCCVFromFactory) Apply ¶
func (d DeployCCVFromFactory) Apply(e cldf.Environment, config CantonCSDeps[DeployCCVFromFactoryConfig]) (cldf.ChangesetOutput, error)
func (DeployCCVFromFactory) VerifyPreconditions ¶
func (d DeployCCVFromFactory) VerifyPreconditions(e cldf.Environment, config CantonCSDeps[DeployCCVFromFactoryConfig]) error
type DeployCCVFromFactoryConfig ¶
type DeployCCVFromFactoryConfig struct {
OwnerParty string `json:"ownerParty" yaml:"ownerParty"`
CCIPOwnerParty string `json:"ccipOwnerParty" yaml:"ccipOwnerParty"`
CCVOwnerParty string `json:"ccvOwnerParty" yaml:"ccvOwnerParty"`
MinDelay time.Duration `json:"minDelay,omitempty" yaml:"minDelay,omitempty"`
Description string `json:"description,omitempty" yaml:"description,omitempty"`
Params sequences.DeployChainContractsParams
}
type DeployChainContracts ¶
type DeployChainContracts struct{}
func (DeployChainContracts) Apply ¶
func (d DeployChainContracts) Apply(e cldf.Environment, config CantonCSDeps[DeployChainContractsConfig]) (cldf.ChangesetOutput, error)
func (DeployChainContracts) VerifyPreconditions ¶
func (d DeployChainContracts) VerifyPreconditions(e cldf.Environment, config CantonCSDeps[DeployChainContractsConfig]) error
type DeployChainContractsConfig ¶
type DeployChainContractsConfig struct {
Params sequences.DeployChainContractsParams
}
type DeployCoin ¶
type DeployCoin struct{}
func (DeployCoin) Apply ¶
func (d DeployCoin) Apply(e cldf.Environment, config CantonCSDeps[DeployCoinConfig]) (cldf.ChangesetOutput, error)
func (DeployCoin) VerifyPreconditions ¶
func (d DeployCoin) VerifyPreconditions(e cldf.Environment, config CantonCSDeps[DeployCoinConfig]) error
type DeployCoinConfig ¶
type DeployCoinConfig struct {
Symbol string
}
type DeployFactoryAndSetOwnerToMCMS ¶
type DeployFactoryAndSetOwnerToMCMS struct{}
func (DeployFactoryAndSetOwnerToMCMS) Apply ¶
func (d DeployFactoryAndSetOwnerToMCMS) Apply(e cldf.Environment, config CantonCSDeps[DeployFactoryAndSetOwnerToMCMSConfig]) (cldf.ChangesetOutput, error)
func (DeployFactoryAndSetOwnerToMCMS) VerifyPreconditions ¶
func (d DeployFactoryAndSetOwnerToMCMS) VerifyPreconditions(e cldf.Environment, config CantonCSDeps[DeployFactoryAndSetOwnerToMCMSConfig]) error
type DeployFactoryAndSetOwnerToMCMSConfig ¶
type DeployFactoryAndSetOwnerToMCMSConfig struct {
OwnerParty string `json:"ownerParty" yaml:"ownerParty"`
MCMSParty string `json:"mcmsParty" yaml:"mcmsParty"`
InstanceID string `json:"instanceID,omitempty" yaml:"instanceID,omitempty"`
Qualifier string `json:"qualifier,omitempty" yaml:"qualifier,omitempty"`
MinDelay time.Duration `json:"minDelay,omitempty" yaml:"minDelay,omitempty"`
}
DeployFactoryAndSetOwnerToMCMS deploys a CCIPFactory and returns an MCMS proposal to transfer ownership.
type DeployLockReleaseTokenPool ¶
type DeployLockReleaseTokenPool struct{}
func (DeployLockReleaseTokenPool) Apply ¶
func (d DeployLockReleaseTokenPool) Apply(e cldf.Environment, config CantonCSDeps[DeployLockReleaseTokenPoolConfig]) (cldf.ChangesetOutput, error)
func (DeployLockReleaseTokenPool) VerifyPreconditions ¶
func (d DeployLockReleaseTokenPool) VerifyPreconditions(e cldf.Environment, config CantonCSDeps[DeployLockReleaseTokenPoolConfig]) error
type DeployLockReleaseTokenPoolConfig ¶
type DeployLockReleaseTokenPoolConfig struct {
CcipOwner string
PoolOwner string
InstrumentId splice_api_token_holding_v1.InstrumentId
Decimals int64
// Optional explicit instance ID for the pool.
// If empty, deploy operation generates one.
InstanceID string
// Qualifier is optional (e.g. token symbol) for AddressRef and idempotency.
Qualifier string
// Optional; defaults to empty. PoolReceiveContext can be set for receive context.
PoolReceiveContext splice_api_token_metadata_v1.ChoiceContext
// Optional; defaults to 24h RelativeHours. TransferTimeout for the pool.
TransferTimeout lockreleasetokenpool.TransferTimeout
// Optional; defaults to empty map.
RemoteChainConfigs map[types.NUMERIC]lockreleasetokenpool.RemoteChainConfig
// Optional; defaults to empty map.
TokenTransferFeeConfigs map[types.NUMERIC]lockreleasetokenpool.TokenTransferFeeConfig2
// Optional; zero-value deps if not provided.
Deps lockreleasetokenpool.LockReleaseTokenPoolDeps
// If set, the pool is registered with this TokenAdminRegistry (ProposeAdministrator, AcceptAdminRole, SetPool) in the same changeset.
TokenAdminRegistryInstanceAddress contracts.InstanceAddress
}
DeployLockReleaseTokenPoolConfig is the config for deploying a LockReleaseTokenPool. If TokenAdminRegistryInstanceAddress is set, the pool is also registered with that TAR in the same changeset.
type DeployRMNFromFactory ¶
type DeployRMNFromFactory struct{}
func (DeployRMNFromFactory) Apply ¶
func (d DeployRMNFromFactory) Apply(e cldf.Environment, config CantonCSDeps[DeployRMNFromFactoryConfig]) (cldf.ChangesetOutput, error)
func (DeployRMNFromFactory) VerifyPreconditions ¶
func (d DeployRMNFromFactory) VerifyPreconditions(e cldf.Environment, config CantonCSDeps[DeployRMNFromFactoryConfig]) error
type DeployRMNFromFactoryConfig ¶
type DeployRMNFromFactoryConfig struct {
OwnerParty string `json:"ownerParty" yaml:"ownerParty"`
CCIPOwnerParty string `json:"ccipOwnerParty" yaml:"ccipOwnerParty"`
RMNOwnerParty string `json:"rmnOwnerParty" yaml:"rmnOwnerParty"`
MinDelay time.Duration `json:"minDelay,omitempty" yaml:"minDelay,omitempty"`
Description string `json:"description,omitempty" yaml:"description,omitempty"`
Params sequences.DeployChainContractsParams
}
type GenerateEDSConfig ¶
type GenerateEDSConfig struct{}
func (GenerateEDSConfig) Apply ¶
func (c GenerateEDSConfig) Apply(e cldf.Environment, config CantonCSDeps[edsConfig.Config]) (cldf.ChangesetOutput, error)
func (GenerateEDSConfig) VerifyPreconditions ¶
func (c GenerateEDSConfig) VerifyPreconditions(e cldf.Environment, config CantonCSDeps[edsConfig.Config]) error
type MCMSConfigParams ¶
type MCMSConfigParams struct {
Signers []mcmsbindings.SignerInfo `json:"signers" yaml:"signers"`
GroupQuorums []types.INT64 `json:"groupQuorums" yaml:"groupQuorums"`
GroupParents []types.INT64 `json:"groupParents" yaml:"groupParents"`
ClearRoot bool `json:"clearRoot" yaml:"clearRoot"`
}
type MCMSRoleConfigParams ¶
type MCMSRoleConfigParams struct {
Role mcmsbindings.Role `json:"role" yaml:"role"`
Config MCMSConfigParams `json:"config" yaml:"config"`
}
type MCMSTimelockConfig ¶
type MCMSTimelockConfig struct {
MinDelay time.Duration
Description string
OverridePrevRoot bool
Action mcms_types.TimelockAction
// MCMSContract describes the MCMS contract for on-chain state queries.
MCMSContract cantonmcms.MCMSContractInfo
// Role is the MCMS role to use (proposer, canceller, bypasser).
Role cantonsdk.TimelockRole
}
MCMSTimelockConfig configures MCMS timelock proposals instead of direct execution.
type SetFactoryOwnerToMCMS ¶
type SetFactoryOwnerToMCMS struct{}
func (SetFactoryOwnerToMCMS) Apply ¶
func (s SetFactoryOwnerToMCMS) Apply(e cldf.Environment, config CantonCSDeps[SetFactoryOwnerToMCMSConfig]) (cldf.ChangesetOutput, error)
func (SetFactoryOwnerToMCMS) VerifyPreconditions ¶
func (s SetFactoryOwnerToMCMS) VerifyPreconditions(e cldf.Environment, config CantonCSDeps[SetFactoryOwnerToMCMSConfig]) error
Source Files
¶
- canton_mcms_preconditions.go
- configure_canton_committee_verifier_for_lanes.go
- configure_canton_tokens_for_transfers.go
- configure_chain_contracts.go
- dependencies.go
- deploy_burn_mint_token_pool.go
- deploy_canton_token_expansion.go
- deploy_chain_contracts.go
- deploy_coin.go
- deploy_factory_and_set_owner_to_mcms.go
- deploy_from_factory.go
- deploy_lock_release_token_pool.go
- deploy_mcms.go
- generate_eds_config.go