ccipops

package
v0.0.0-...-a394dd7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 28, 2026 License: MIT Imports: 18 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var AcceptOwnershipStateObjectOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "state_object", "accept_ownership"),
	semver.MustParse("0.1.0"),
	"Accepts ownership of the CCIP StateObject",
	acceptOwnershipStateObjectHandler,
)
View Source
var AddAllowedModulesStateObjectOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "state_object", "add_allowed_modules"),
	semver.MustParse("0.1.0"),
	"Adds module names to the MCMS registry allowlist via the CCIP state_object MCMS entrypoint (state_object::add_allowed_modules)",
	addAllowedModulesStateObjectHandler,
)
View Source
var AddPackageIdStateObjectOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "state_object", "add_package_id"),
	semver.MustParse("0.1.0"),
	"Adds a new package ID to the CCIP StateObject for upgrade tracking",
	addPackageIdStateObjectHandler,
)

Exports every operation available so they can be registered to be used in dynamic changesets

View Source
var BlockFunctionOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "upgrade_registry", "block_function"),
	semver.MustParse("0.1.0"),
	"Blocks a specific function in a specific version in the UpgradeRegistry",
	blockFunctionHandler,
)
View Source
var BlockVersionOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "upgrade_registry", "block_version"),
	semver.MustParse("0.1.0"),
	"Blocks an entire version of a module in the UpgradeRegistry",
	blockVersionHandler,
)
View Source
var DeployAndInitCCIPSequence = cld_ops.NewSequence(
	"sui-deploy-ccip-seq",
	semver.MustParse("0.1.0"),
	"Deploys and sets initial CCIP configuration",
	func(env cld_ops.Bundle, deps sui_ops.OpTxDeps, input DeployAndInitCCIPSeqInput) (DeployCCIPSeqOutput, error) {
		deployReport, err := cld_ops.ExecuteOperation(env, DeployCCIPOp, deps, input.DeployCCIPInput)
		if err != nil {
			return DeployCCIPSeqOutput{}, err
		}

		initUpgradeRegistryReport, err := cld_ops.ExecuteOperation(
			env,
			UpgradeRegistryInitializeOp,
			deps,
			InitUpgradeRegistryInput{
				CCIPPackageId:    deployReport.Output.PackageId,
				StateObjectId:    deployReport.Output.Objects.CCIPObjectRefObjectId,
				OwnerCapObjectId: deployReport.Output.Objects.OwnerCapObjectId,
			},
		)
		if err != nil {
			return DeployCCIPSeqOutput{}, err
		}

		initFQReport, err := cld_ops.ExecuteOperation(
			env,
			FeeQuoterInitializeOp,
			deps,
			InitFeeQuoterInput{
				CCIPPackageId:                 deployReport.Output.PackageId,
				StateObjectId:                 deployReport.Output.Objects.CCIPObjectRefObjectId,
				OwnerCapObjectId:              deployReport.Output.Objects.OwnerCapObjectId,
				MaxFeeJuelsPerMsg:             input.MaxFeeJuelsPerMsg,
				LinkTokenCoinMetadataObjectId: input.LinkTokenCoinMetadataObjectId,
				TokenPriceStalenessThreshold:  input.TokenPriceStalenessThreshold,
				FeeTokens:                     []string{input.LinkTokenCoinMetadataObjectId},
			},
		)
		if err != nil {
			return DeployCCIPSeqOutput{}, err
		}

		initNMReport, err := cld_ops.ExecuteOperation(
			env,
			NonceManagerInitializeOp,
			deps,
			InitNMInput{
				CCIPPackageId:    deployReport.Output.PackageId,
				StateObjectId:    deployReport.Output.Objects.CCIPObjectRefObjectId,
				OwnerCapObjectId: deployReport.Output.Objects.OwnerCapObjectId,
			},
		)
		if err != nil {
			return DeployCCIPSeqOutput{}, err
		}

		initRecRegReport, err := cld_ops.ExecuteOperation(
			env,
			ReceiverRegistryInitializeOp,
			deps,
			InitRecRegInput{
				CCIPPackageId:    deployReport.Output.PackageId,
				StateObjectId:    deployReport.Output.Objects.CCIPObjectRefObjectId,
				OwnerCapObjectId: deployReport.Output.Objects.OwnerCapObjectId,
			},
		)
		if err != nil {
			return DeployCCIPSeqOutput{}, err
		}

		initRMNRemoteReport, err := cld_ops.ExecuteOperation(
			env,
			RMNRemoteInitializeOp,
			deps,
			InitRMNRemoteInput{
				CCIPPackageId:      deployReport.Output.PackageId,
				StateObjectId:      deployReport.Output.Objects.CCIPObjectRefObjectId,
				OwnerCapObjectId:   deployReport.Output.Objects.OwnerCapObjectId,
				LocalChainSelector: input.LocalChainSelector,
			},
		)
		if err != nil {
			return DeployCCIPSeqOutput{}, err
		}

		initTARReport, err := cld_ops.ExecuteOperation(
			env,
			TokenAdminRegistryInitializeOp,
			deps,
			InitTARInput{
				CCIPPackageId:      deployReport.Output.PackageId,
				StateObjectId:      deployReport.Output.Objects.CCIPObjectRefObjectId,
				OwnerCapObjectId:   deployReport.Output.Objects.OwnerCapObjectId,
				LocalChainSelector: input.LocalChainSelector,
			},
		)
		if err != nil {
			return DeployCCIPSeqOutput{}, err
		}

		_, err = cld_ops.ExecuteOperation(
			env,
			FeeQuoterApplyTokenTransferFeeConfigUpdatesOp,
			deps,
			FeeQuoterApplyTokenTransferFeeConfigUpdatesInput{
				CCIPPackageId:        deployReport.Output.PackageId,
				StateObjectId:        deployReport.Output.Objects.CCIPObjectRefObjectId,
				OwnerCapObjectId:     deployReport.Output.Objects.OwnerCapObjectId,
				AddTokens:            []string{input.LinkTokenCoinMetadataObjectId},
				AddMinFeeUsdCents:    input.AddMinFeeUsdCents,
				AddMaxFeeUsdCents:    input.AddMaxFeeUsdCents,
				AddDeciBps:           input.AddDeciBps,
				AddDestGasOverhead:   input.AddDestGasOverhead,
				AddDestBytesOverhead: input.AddDestBytesOverhead,
				AddIsEnabled:         input.AddIsEnabled,
				RemoveTokens:         input.RemoveTokens,
			},
		)
		if err != nil {
			return DeployCCIPSeqOutput{}, err
		}

		_, err = cld_ops.ExecuteOperation(
			env,
			FeeQuoterApplyDestChainConfigUpdatesOp,
			deps,
			FeeQuoterApplyDestChainConfigUpdatesInput{
				CCIPPackageId:                     deployReport.Output.PackageId,
				StateObjectId:                     deployReport.Output.Objects.CCIPObjectRefObjectId,
				OwnerCapObjectId:                  deployReport.Output.Objects.OwnerCapObjectId,
				DestChainSelector:                 input.DestChainSelector,
				IsEnabled:                         input.IsEnabled,
				MaxNumberOfTokensPerMsg:           input.MaxNumberOfTokensPerMsg,
				MaxDataBytes:                      input.MaxDataBytes,
				MaxPerMsgGasLimit:                 input.MaxPerMsgGasLimit,
				DestGasOverhead:                   input.DestGasOverhead,
				DestGasPerPayloadByteBase:         input.DestGasPerPayloadByteBase,
				DestGasPerPayloadByteHigh:         input.DestGasPerPayloadByteHigh,
				DestGasPerPayloadByteThreshold:    input.DestGasPerPayloadByteThreshold,
				DestDataAvailabilityOverheadGas:   input.DestDataAvailabilityOverheadGas,
				DestGasPerDataAvailabilityByte:    input.DestGasPerDataAvailabilityByte,
				DestDataAvailabilityMultiplierBps: input.DestDataAvailabilityMultiplierBps,
				ChainFamilySelector:               input.ChainFamilySelector,
				EnforceOutOfOrder:                 input.EnforceOutOfOrder,
				DefaultTokenFeeUsdCents:           input.DefaultTokenFeeUsdCents,
				DefaultTokenDestGasOverhead:       input.DefaultTokenDestGasOverhead,
				DefaultTxGasLimit:                 input.DefaultTxGasLimit,
				GasMultiplierWeiPerEth:            input.GasMultiplierWeiPerEth,
				GasPriceStalenessThreshold:        input.GasPriceStalenessThreshold,
				NetworkFeeUsdCents:                input.NetworkFeeUsdCents,
			},
		)
		if err != nil {
			return DeployCCIPSeqOutput{}, err
		}

		_, err = cld_ops.ExecuteOperation(
			env,
			FeeQuoterApplyPremiumMultiplierWeiPerEthUpdatesOp,
			deps,
			FeeQuoterApplyPremiumMultiplierWeiPerEthUpdatesInput{
				CCIPPackageId:              deployReport.Output.PackageId,
				StateObjectId:              deployReport.Output.Objects.CCIPObjectRefObjectId,
				OwnerCapObjectId:           deployReport.Output.Objects.OwnerCapObjectId,
				Tokens:                     []string{input.LinkTokenCoinMetadataObjectId},
				PremiumMultiplierWeiPerEth: input.PremiumMultiplierWeiPerEth,
			},
		)
		if err != nil {
			return DeployCCIPSeqOutput{}, err
		}

		_, err = cld_ops.ExecuteOperation(
			env,
			TransferOwnershipStateObjectOp,
			deps,
			TransferOwnershipStateObjectInput{
				CCIPPackageId:         deployReport.Output.PackageId,
				CCIPObjectRefObjectId: deployReport.Output.Objects.CCIPObjectRefObjectId,
				OwnerCapObjectId:      deployReport.Output.Objects.OwnerCapObjectId,
				To:                    input.DeployCCIPInput.McmsPackageId,
			},
		)

		return DeployCCIPSeqOutput{
			CCIPPackageId: deployReport.Output.PackageId,
			Objects: DeployCCIPSeqObjects{
				CCIPObjectRefObjectId:           deployReport.Output.Objects.CCIPObjectRefObjectId,
				OwnerCapObjectId:                deployReport.Output.Objects.OwnerCapObjectId,
				FeeQuoterCapObjectId:            initFQReport.Output.Objects.FeeQuoterCapObjectId,
				FeeQuoterStateObjectId:          initFQReport.Output.Objects.FeeQuoterStateObjectId,
				NonceManagerStateObjectId:       initNMReport.Output.Objects.NonceManagerStateObjectId,
				NonceManagerCapObjectId:         initNMReport.Output.Objects.NonceManagerCapObjectId,
				ReceiverRegistryStateObjectId:   initRecRegReport.Output.Objects.ReceiverRegistryStateObjectId,
				RMNRemoteStateObjectId:          initRMNRemoteReport.Output.Objects.RMNRemoteStateObjectId,
				TokenAdminRegistryStateObjectId: initTARReport.Output.Objects.TARStateObjectId,
				UpgradeRegistryObjectId:         initUpgradeRegistryReport.Output.Objects.UpgradeRegistryObjectId,
				SourceTransferCapObjectId:       deployReport.Output.Objects.SourceTransferCapObjectId,
				DestTransferCapObjectId:         deployReport.Output.Objects.DestTransferCapObjectId,
				UpgradeCapObjectId:              deployReport.Output.Objects.UpgradeCapObjectId,
			},
		}, nil
	},
)
View Source
var DeployAndInitDummyReceiverSequence = cld_ops.NewSequence(
	"sui-deploy-dummy-receiver-seq",
	semver.MustParse("0.1.0"),
	"Deploys CCIP dummy receiver and registers it with the receiver registry",
	func(env cld_ops.Bundle, deps sui_ops.OpTxDeps, input DeployAndInitDummyReceiverInput) (DeployDummyReceiverSeqOutput, error) {

		lggr := env.Logger
		lggr.Debugw("Deploying dummy receiver", "input", input)

		deployReport, err := cld_ops.ExecuteOperation(env, DeployCCIPDummyReceiverOp, deps, input.DeployDummyReceiverInput)
		if err != nil {
			return DeployDummyReceiverSeqOutput{}, err
		}

		env.Logger.Infow("Dummy receiver deployed successfully",
			"packageId", deployReport.Output.PackageId,
			"receiverStateId", deployReport.Output.Objects.CCIPReceiverStateObjectId,
		)

		_, err = cld_ops.ExecuteOperation(
			env,
			RegisterDummyReceiverOp,
			deps,
			RegisterDummyReceiverInput{
				OwnerCapObjectId:       deployReport.Output.Objects.OwnerCapObjectId,
				CCIPObjectRefObjectId:  input.CCIPObjectRefObjectId,
				DummyReceiverPackageId: deployReport.Output.PackageId,
			},
		)
		if err != nil {
			return DeployDummyReceiverSeqOutput{}, err
		}

		env.Logger.Infow("Dummy receiver registered successfully with receiver registry")

		return DeployDummyReceiverSeqOutput{
			DummyReceiverPackageId: deployReport.Output.PackageId,
			Objects: DeployDummyReceiverSeqObjects{
				OwnerCapObjectId:          deployReport.Output.Objects.OwnerCapObjectId,
				CCIPReceiverStateObjectId: deployReport.Output.Objects.CCIPReceiverStateObjectId,
			},
		}, nil
	},
)
View Source
var DeployCCIPDummyReceiverOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip-dummy-receiver", "package", "deploy"),
	semver.MustParse("0.1.0"),
	"Deploys the CCIP dummy receiver package",
	deployDummyReceiverHandler,
)
View Source
var DeployCCIPOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "package", "deploy"),
	semver.MustParse("0.1.0"),
	"Deploys the CCIP package",
	deployHandler,
)
View Source
var ExecuteOwnershipTransferToMcmsStateObjectOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "state_object", "execute_ownership_transfer_to_mcms"),
	semver.MustParse("0.1.0"),
	"Executes ownership transfer to MCMS for the CCIP StateObject",
	executeOwnershipTransferToMcmsStateObjectHandler,
)
View Source
var FeeQuoterApplyDestChainConfigUpdatesOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "fee_quoter", "apply_dest_chain_config_updates"),
	semver.MustParse("0.1.0"),
	"Apply destination chain config updates in the CCIP Fee Quoter contract",
	applyDestChainConfigHandler,
)
View Source
var FeeQuoterApplyFeeTokenUpdatesOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "fee_quoter", "apply_fee_token_updates"),
	semver.MustParse("0.1.0"),
	"Apply fee token updates in the CCIP Fee Quoter contract",
	applyUpdatesHandler,
)
View Source
var FeeQuoterApplyPremiumMultiplierWeiPerEthUpdatesOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "fee_quoter", "apply_premium_multiplier_wei_per_eth_updates"),
	semver.MustParse("0.1.0"),
	"Apply premium multiplier wei per eth updates in the CCIP Fee Quoter contract",
	applyPremiumMultiplierHandler,
)
View Source
var FeeQuoterApplyTokenTransferFeeConfigUpdatesOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "fee_quoter", "apply_token_transfer_fee_config_updates"),
	semver.MustParse("0.1.0"),
	"Apply transfer fee config updates in the CCIP Fee Quoter contract",
	applyTokenTransferFeeHandler,
)
View Source
var FeeQuoterDestroyFeeQuoterCapOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "fee_quoter", "destroy_fee_quoter_cap"),
	semver.MustParse("0.1.0"),
	"Destroy a fee quoter cap in the CCIP Fee Quoter contract",
	destroyFeeQuoterCapHandler,
)
View Source
var FeeQuoterInitializeOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "fee_quoter", "initialize"),
	semver.MustParse("0.1.0"),
	"Initializes the CCIP Fee Quoter contract",
	initFQHandler,
)
View Source
var FeeQuoterNewFeeQuoterCapOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "fee_quoter", "new_fee_quoter_cap"),
	semver.MustParse("0.1.0"),
	"Create a new fee quoter cap in the CCIP Fee Quoter contract",
	newFeeQuoterCapHandler,
)
View Source
var FeeQuoterUpdatePricesWithOwnerCapOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "fee_quoter", "update_prices_with_owner_cap"),
	semver.MustParse("0.1.0"),
	"Update prices using owner cap in CCIP Fee Quoter contract",
	updatePricesWithOwnerCapHandler,
)
View Source
var FeeQuoterUpdateTokenPricesOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "fee_quoter", "update_prices"),
	semver.MustParse("0.1.0"),
	"Apply update prices in CCIP Fee Quoter contract",
	updateTokenPrices,
)
View Source
var FeeQuoterUpdateTokenPricesWithOwnerCapOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "fee_quoter", "update_prices_with_owner_cap"),
	semver.MustParse("0.1.0"),
	"Apply update prices with ownerCap in CCIP Fee Quoter contract",
	updateTokenPricesWithOwnerCap,
)
View Source
var GetModuleRestrictionsOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "upgrade_registry", "get_module_restrictions"),
	semver.MustParse("0.1.0"),
	"Gets module restrictions from the UpgradeRegistry",
	getModuleRestrictionsHandler,
)
View Source
var GetOwnerCapIdStateObjectOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "state_object", "get_owner_cap_id"),
	semver.MustParse("0.1.0"),
	"Gets the owner cap ID from the CCIP StateObject",
	getOwnerCapIdStateObjectHandler,
)
View Source
var GetOwnerStateObjectOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "state_object", "get_owner"),
	semver.MustParse("0.1.0"),
	"Gets the owner from the CCIP StateObject",
	getOwnerStateObjectHandler,
)
View Source
var GetPendingTransferStateObjectOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "state_object", "get_pending_transfer"),
	semver.MustParse("0.1.0"),
	"Gets pending transfer information from the CCIP StateObject",
	getPendingTransferStateObjectHandler,
)
View Source
var IsFunctionAllowedOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "upgrade_registry", "is_function_allowed"),
	semver.MustParse("0.1.0"),
	"Checks if a function is allowed in the UpgradeRegistry",
	isFunctionAllowedHandler,
)
View Source
var NonceManagerInitializeOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "nonce_manager", "initialize"),
	semver.MustParse("0.1.0"),
	"Initializes the CCIP Nonce Manager contract",
	initNMHandler,
)
View Source
var RMNRemoteCurseMultipleOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "rmn_remote", "curse_multiple"),
	semver.MustParse("0.1.0"),
	"Curses multiple subjects in the CCIP RMN Remote contract",
	handlerCurseMultiple,
)
View Source
var RMNRemoteCurseOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "rmn_remote", "curse"),
	semver.MustParse("0.1.0"),
	"Curses a subject in the CCIP RMN Remote contract",
	handlerCurse,
)
View Source
var RMNRemoteInitializeOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "rmn_remote", "initialize"),
	semver.MustParse("0.1.0"),
	"Initializes the CCIP RMN Remote contract",
	initRMNRemoteHandler,
)
View Source
var RMNRemoteSetConfigOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "rmn_remote", "set_config"),
	semver.MustParse("0.1.0"),
	"Sets config the CCIP RMN Remote contract",
	handlerSetconfig,
)
View Source
var RMNRemoteUncurseMultipleOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "rmn_remote", "uncurse_multiple"),
	semver.MustParse("0.1.0"),
	"Uncurses multiple subjects in the CCIP RMN Remote contract",
	handlerUncurseMultiple,
)
View Source
var RMNRemoteUncurseOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "rmn_remote", "uncurse"),
	semver.MustParse("0.1.0"),
	"Uncurses a subject in the CCIP RMN Remote contract",
	handlerUncurse,
)
View Source
var ReceiverRegistryInitializeOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "receiver_registry", "initialize"),
	semver.MustParse("0.1.0"),
	"Initializes the CCIP Receiver Registry contract",
	initRecRegHandler,
)
View Source
var RegisterDummyReceiverOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip-dummy-receiver", "dummy_receiver", "register_receiver"),
	semver.MustParse("0.1.0"),
	"Registers the CCIP dummy receiver with the receiver registry using the dummy receiver's register_receiver function",
	registerDummyReceiverHandler,
)
View Source
var RemovePackageIdStateObjectOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "state_object", "remove_package_id"),
	semver.MustParse("0.1.0"),
	"Removes a package ID from the CCIP StateObject",
	removePackageIdStateObjectHandler,
)
View Source
var TokenAdminRegistryAcceptAdminRoleOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "token_admin_registry", "accept_admin_role"),
	semver.MustParse("0.1.0"),
	"Accepts admin role for a token in the CCIP Token Admin Registry",
	acceptAdminRoleHandler,
)
View Source
var TokenAdminRegistryInitializeOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "token_admin_registry", "initialize"),
	semver.MustParse("0.1.0"),
	"Initializes the CCIP Token Admin Registry contract",
	initTarHandler,
)
View Source
var TokenAdminRegistryTransferAdminRoleOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "token_admin_registry", "transfer_admin_role"),
	semver.MustParse("0.1.0"),
	"Transfers admin role for a token in the CCIP Token Admin Registry",
	transferAdminRoleHandler,
)
View Source
var TokenAdminRegistryUnregisterPoolOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "token_admin_registry", "unregister_pool"),
	semver.MustParse("0.1.0"),
	"Unregisters a token pool from the CCIP Token Admin Registry",
	unregisterPoolHandler,
)
View Source
var TransferOwnershipStateObjectOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "state_object", "transfer_ownership"),
	semver.MustParse("0.1.0"),
	"Transfers ownership of the CCIP StateObject",
	transferOwnershipStateObjectHandler,
)
View Source
var UnblockFunctionOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "upgrade_registry", "unblock_function"),
	semver.MustParse("0.1.0"),
	"Unblocks a specific function in a specific version in the UpgradeRegistry",
	unblockFunctionHandler,
)
View Source
var UnblockVersionOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "upgrade_registry", "unblock_version"),
	semver.MustParse("0.1.0"),
	"Unblocks an entire version of a module in the UpgradeRegistry",
	unblockVersionHandler,
)
View Source
var UpgradeRegistryInitializeOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "upgrade_registry", "initialize"),
	semver.MustParse("0.1.0"),
	"Initializes the CCIP UpgradeRegistry contract",
	initUpgradeRegistryHandler,
)
View Source
var VerifyFunctionAllowedOp = cld_ops.NewOperation(
	sui_ops.NewSuiOperationName("ccip", "upgrade_registry", "verify_function_allowed"),
	semver.MustParse("0.1.0"),
	"Verifies that a function is allowed in the UpgradeRegistry (throws error if not allowed)",
	verifyFunctionAllowedHandler,
)

Functions

This section is empty.

Types

type AcceptAdminRoleInput

type AcceptAdminRoleInput struct {
	CCIPPackageId       string
	CCIPObjectRef       string
	CoinMetadataAddress string
}

type AcceptOwnershipStateObjectInput

type AcceptOwnershipStateObjectInput struct {
	CCIPPackageId         string
	CCIPObjectRefObjectId string
}

type AcceptOwnershipStateObjectObjects

type AcceptOwnershipStateObjectObjects struct {
}

type AddAllowedModulesStateObjectInput

type AddAllowedModulesStateObjectInput struct {
	PackageId         string // original CCIP package ID (MCMS registry identity; used as binary when LatestPackageId is "")
	LatestPackageId   string // optional: upgraded CCIP package ID (PTB execution target when set)
	MCMSRegistryObjId string // mcms_registry Registry shared object ID
	AllowedModules    []string
}

AddAllowedModulesStateObjectInput configures mcms_registry::add_allowed_modules<T>

type AddAllowedModulesStateObjectObjects

type AddAllowedModulesStateObjectObjects struct{}

type AddPackageIdStateObjectInput

type AddPackageIdStateObjectInput struct {
	PackageId             string // original package ID (MCMS registry identity; used as binary when LatestPackageId is "")
	LatestPackageId       string // optional: upgraded package ID (PTB execution target when set)
	CCIPObjectRefObjectId string
	OwnerCapObjectId      string
	NewPackageId          string // the package ID to register in the CCIP StateObject
}

type AddPackageIdStateObjectObjects

type AddPackageIdStateObjectObjects struct {
}

type BlockFunctionInput

type BlockFunctionInput struct {
	PackageId        string // original package ID (MCMS registry identity; used as binary when LatestPackageId is "")
	LatestPackageId  string // optional: upgraded package ID (PTB execution target when set)
	StateObjectId    string
	OwnerCapObjectId string
	ModuleName       string
	FunctionName     string
	Version          uint8
}

type BlockFunctionObjects

type BlockFunctionObjects struct {
}

type BlockVersionInput

type BlockVersionInput struct {
	PackageId        string // original package ID (MCMS registry identity; used as binary when LatestPackageId is "")
	LatestPackageId  string // optional: upgraded package ID (PTB execution target when set)
	StateObjectId    string
	OwnerCapObjectId string
	ModuleName       string
	Version          uint8
}

type BlockVersionObjects

type BlockVersionObjects struct {
}

type DeployAndInitCCIPSeqInput

type DeployAndInitCCIPSeqInput struct {
	LinkTokenCoinMetadataObjectId string
	LocalChainSelector            uint64
	DestChainSelector             uint64
	DeployCCIPInput
	// Fee Quoter
	MaxFeeJuelsPerMsg            string
	TokenPriceStalenessThreshold uint64

	// Fee Quoter configuration
	AddMinFeeUsdCents    []uint32
	AddMaxFeeUsdCents    []uint32
	AddDeciBps           []uint16
	AddDestGasOverhead   []uint32
	AddDestBytesOverhead []uint32
	AddIsEnabled         []bool
	RemoveTokens         []string
	// Fee Quoter destination chain configuration
	IsEnabled                         bool
	MaxNumberOfTokensPerMsg           uint16
	MaxDataBytes                      uint32
	MaxPerMsgGasLimit                 uint32
	DestGasOverhead                   uint32
	DestGasPerPayloadByteBase         byte
	DestGasPerPayloadByteHigh         byte
	DestGasPerPayloadByteThreshold    uint16
	DestDataAvailabilityOverheadGas   uint32
	DestGasPerDataAvailabilityByte    uint16
	DestDataAvailabilityMultiplierBps uint16
	ChainFamilySelector               []byte
	EnforceOutOfOrder                 bool
	DefaultTokenFeeUsdCents           uint16
	DefaultTokenDestGasOverhead       uint32
	DefaultTxGasLimit                 uint32
	GasMultiplierWeiPerEth            uint64
	GasPriceStalenessThreshold        uint32
	NetworkFeeUsdCents                uint32
	// Premium multiplier updates
	PremiumMultiplierWeiPerEth []uint64

	// RMN Remote config
	RmnHomeContractConfigDigest []byte
	SignerOnchainPublicKeys     [][]byte
	NodeIndexes                 []uint64
	FSign                       uint64
}

type DeployAndInitDummyReceiverInput

type DeployAndInitDummyReceiverInput struct {
	// For deployment
	DeployDummyReceiverInput
	// For registration
	CCIPObjectRefObjectId string
}

type DeployCCIPInput

type DeployCCIPInput struct {
	McmsPackageId string
	McmsOwner     string
}

type DeployCCIPObjects

type DeployCCIPObjects struct {
	// State Object
	OwnerCapObjectId             string
	CCIPObjectRefPointerObjectId string
	CCIPObjectRefObjectId        string
	// onramp_state_helper
	SourceTransferCapObjectId string
	// offramp_state_helper
	DestTransferCapObjectId string

	UpgradeCapObjectId string
}

type DeployCCIPSeqObjects

type DeployCCIPSeqObjects struct {
	CCIPObjectRefObjectId           string
	OwnerCapObjectId                string
	FeeQuoterCapObjectId            string
	FeeQuoterStateObjectId          string
	NonceManagerStateObjectId       string
	NonceManagerCapObjectId         string
	ReceiverRegistryStateObjectId   string
	RMNRemoteStateObjectId          string
	TokenAdminRegistryStateObjectId string
	UpgradeRegistryObjectId         string
	SourceTransferCapObjectId       string
	DestTransferCapObjectId         string
	UpgradeCapObjectId              string
}

type DeployCCIPSeqOutput

type DeployCCIPSeqOutput struct {
	CCIPPackageId string
	Objects       DeployCCIPSeqObjects
}

type DeployDummyReceiverInput

type DeployDummyReceiverInput struct {
	CCIPPackageId string
	McmsPackageId string
	McmsOwner     string
}

type DeployDummyReceiverObjects

type DeployDummyReceiverObjects struct {
	OwnerCapObjectId          string
	CCIPReceiverStateObjectId string
}

type DeployDummyReceiverSeqObjects

type DeployDummyReceiverSeqObjects struct {
	OwnerCapObjectId          string
	CCIPReceiverStateObjectId string
}

type DeployDummyReceiverSeqOutput

type DeployDummyReceiverSeqOutput struct {
	DummyReceiverPackageId string
	Objects                DeployDummyReceiverSeqObjects
}

type DestroyFeeQuoterCapInput

type DestroyFeeQuoterCapInput struct {
	CCIPPackageId        string
	CCIPObjectRef        string
	OwnerCapObjectId     string
	FeeQuoterCapObjectId string
}

FEE QUOTER -- destroy_fee_quoter_cap

type ExecuteOwnershipTransferToMcmsStateObjectInput

type ExecuteOwnershipTransferToMcmsStateObjectInput struct {
	CCIPPackageId         string
	CCIPObjectRefObjectId string
	OwnerCapObjectId      string
	RegistryObjectId      string
	To                    string
}

type ExecuteOwnershipTransferToMcmsStateObjectObjects

type ExecuteOwnershipTransferToMcmsStateObjectObjects struct {
}

type FeeQuoterApplyDestChainConfigUpdatesInput

type FeeQuoterApplyDestChainConfigUpdatesInput struct {
	CCIPPackageId                     string
	StateObjectId                     string
	OwnerCapObjectId                  string
	DestChainSelector                 uint64
	IsEnabled                         bool
	MaxNumberOfTokensPerMsg           uint16
	MaxDataBytes                      uint32
	MaxPerMsgGasLimit                 uint32
	DestGasOverhead                   uint32
	DestGasPerPayloadByteBase         byte
	DestGasPerPayloadByteHigh         byte
	DestGasPerPayloadByteThreshold    uint16
	DestDataAvailabilityOverheadGas   uint32
	DestGasPerDataAvailabilityByte    uint16
	DestDataAvailabilityMultiplierBps uint16
	ChainFamilySelector               []byte
	EnforceOutOfOrder                 bool
	DefaultTokenFeeUsdCents           uint16
	DefaultTokenDestGasOverhead       uint32
	DefaultTxGasLimit                 uint32
	GasMultiplierWeiPerEth            uint64
	GasPriceStalenessThreshold        uint32
	NetworkFeeUsdCents                uint32
}

FEE QUOTER -- apply_dest_chain_config_updates

type FeeQuoterApplyFeeTokenUpdatesInput

type FeeQuoterApplyFeeTokenUpdatesInput struct {
	CCIPPackageId     string
	StateObjectId     string
	OwnerCapObjectId  string
	FeeTokensToRemove []string
	FeeTokensToAdd    []string
}

type FeeQuoterApplyPremiumMultiplierWeiPerEthUpdatesInput

type FeeQuoterApplyPremiumMultiplierWeiPerEthUpdatesInput struct {
	CCIPPackageId              string
	StateObjectId              string
	OwnerCapObjectId           string
	Tokens                     []string
	PremiumMultiplierWeiPerEth []uint64
}

FEE QUOTER -- apply_premium_multiplier_wei_per_eth_updates

type FeeQuoterApplyTokenTransferFeeConfigUpdatesInput

type FeeQuoterApplyTokenTransferFeeConfigUpdatesInput struct {
	CCIPPackageId        string
	StateObjectId        string
	OwnerCapObjectId     string
	DestChainSelector    uint64
	AddTokens            []string
	AddMinFeeUsdCents    []uint32
	AddMaxFeeUsdCents    []uint32
	AddDeciBps           []uint16
	AddDestGasOverhead   []uint32
	AddDestBytesOverhead []uint32
	AddIsEnabled         []bool
	RemoveTokens         []string
}

FEE QUOTER -- apply_token_transfer_fee_config_updates

type FeeQuoterUpdatePricesWithOwnerCapInput

type FeeQuoterUpdatePricesWithOwnerCapInput struct {
	CCIPPackageId         string
	CCIPObjectRef         string
	OwnerCapObjectId      string
	SourceTokens          []string
	SourceUsdPerToken     []*big.Int
	GasDestChainSelectors []uint64
	GasUsdPerUnitGas      []*big.Int
}

FEE QUOTER -- update_prices_with_owner_cap

type FeeQuoterUpdateTokenPricesInput

type FeeQuoterUpdateTokenPricesInput struct {
	CCIPPackageId         string
	CCIPObjectRef         string
	SourceTokens          []string
	SourceUsdPerToken     []*big.Int
	GasDestChainSelectors []uint64
	GasUsdPerUnitGas      []*big.Int

	FeeQuoterCapId string // optional: only provide if you're running direct UpdateTokenPrice
	OwnerCapId     string // optional: only provide if you're running UpdateTokenPricesWithOwnerCap
}

type GetModuleRestrictionsInput

type GetModuleRestrictionsInput struct {
	CCIPPackageId string
	StateObjectId string
	ModuleName    string
}

type GetModuleRestrictionsOutput

type GetModuleRestrictionsOutput struct {
	Restrictions [][]byte
}

type GetOwnerCapIdStateObjectInput

type GetOwnerCapIdStateObjectInput struct {
	CCIPPackageId         string
	CCIPObjectRefObjectId string
}

type GetOwnerCapIdStateObjectOutput

type GetOwnerCapIdStateObjectOutput struct {
	OwnerCapId string
}

type GetOwnerStateObjectInput

type GetOwnerStateObjectInput struct {
	CCIPPackageId         string
	CCIPObjectRefObjectId string
}

type GetOwnerStateObjectOutput

type GetOwnerStateObjectOutput struct {
	Owner string
}

type GetPendingTransferStateObjectInput

type GetPendingTransferStateObjectInput struct {
	CCIPPackageId         string
	CCIPObjectRefObjectId string
}

type GetPendingTransferStateObjectOutput

type GetPendingTransferStateObjectOutput struct {
	HasPendingTransfer      bool
	PendingTransferFrom     *string
	PendingTransferTo       *string
	PendingTransferAccepted *bool
}

type InitFeeQuoterInput

type InitFeeQuoterInput struct {
	CCIPPackageId                 string
	StateObjectId                 string
	OwnerCapObjectId              string
	MaxFeeJuelsPerMsg             string
	LinkTokenCoinMetadataObjectId string
	TokenPriceStalenessThreshold  uint64
	FeeTokens                     []string
}

type InitFeeQuoterObjects

type InitFeeQuoterObjects struct {
	FeeQuoterCapObjectId   string
	FeeQuoterStateObjectId string
}

FEE QUOTER -- INITIALIZE

type InitNMInput

type InitNMInput struct {
	CCIPPackageId    string
	StateObjectId    string
	OwnerCapObjectId string
}

type InitNMObjects

type InitNMObjects struct {
	NonceManagerStateObjectId string
	NonceManagerCapObjectId   string
}

type InitRMNRemoteInput

type InitRMNRemoteInput struct {
	CCIPPackageId      string
	StateObjectId      string
	OwnerCapObjectId   string
	LocalChainSelector uint64
}

type InitRMNRemoteObjects

type InitRMNRemoteObjects struct {
	RMNRemoteStateObjectId string
}

type InitRecRegInput

type InitRecRegInput struct {
	CCIPPackageId    string
	StateObjectId    string
	OwnerCapObjectId string
}

type InitRecRegObjects

type InitRecRegObjects struct {
	ReceiverRegistryStateObjectId string
}

type InitTARInput

type InitTARInput struct {
	CCIPPackageId      string
	StateObjectId      string
	OwnerCapObjectId   string
	LocalChainSelector uint64
}

type InitTARObjects

type InitTARObjects struct {
	TARStateObjectId string
}

type InitUpgradeRegistryInput

type InitUpgradeRegistryInput struct {
	CCIPPackageId    string
	StateObjectId    string
	OwnerCapObjectId string
}

type InitUpgradeRegistryObjects

type InitUpgradeRegistryObjects struct {
	UpgradeRegistryObjectId string
}

type IsFunctionAllowedInput

type IsFunctionAllowedInput struct {
	CCIPPackageId   string
	StateObjectId   string
	ModuleName      string
	FunctionName    string
	ContractVersion uint8
}

type IsFunctionAllowedOutput

type IsFunctionAllowedOutput struct {
	IsAllowed bool
}

type NewFeeQuoterCapInput

type NewFeeQuoterCapInput struct {
	CCIPPackageId    string
	CCIPObjectRef    string
	OwnerCapObjectId string
}

type NewFeeQuoterCapObjects

type NewFeeQuoterCapObjects struct {
	FeeQuoterCapObjectId string
}

FEE QUOTER -- new_fee_quoter_cap

type NoObjects

type NoObjects struct{}

FEE QUOTER -- apply_fee_token_updates

type RMNRemoteCurseInput

type RMNRemoteCurseInput struct {
	CCIPPackageId    string
	StateObjectId    string
	OwnerCapObjectId string
	Subject          []byte
}

type RMNRemoteCurseMultipleInput

type RMNRemoteCurseMultipleInput struct {
	CCIPPackageId    string
	StateObjectId    string
	OwnerCapObjectId string
	Subjects         [][]byte
}

type RMNRemoteSetConfigInput

type RMNRemoteSetConfigInput struct {
	CCIPPackageId               string
	StateObjectId               string
	OwnerCapObjectId            string
	RmnHomeContractConfigDigest []byte
	SignerOnchainPublicKeys     [][]byte
	NodeIndexes                 []uint64
	FSign                       uint64
}

type RMNRemoteUncurseInput

type RMNRemoteUncurseInput struct {
	CCIPPackageId    string
	StateObjectId    string
	OwnerCapObjectId string
	Subject          []byte
}

type RMNRemoteUncurseMultipleInput

type RMNRemoteUncurseMultipleInput struct {
	CCIPPackageId    string
	StateObjectId    string
	OwnerCapObjectId string
	Subjects         [][]byte
}

type RegisterDummyReceiverInput

type RegisterDummyReceiverInput struct {
	OwnerCapObjectId       string
	CCIPObjectRefObjectId  string
	DummyReceiverPackageId string
}

type RegisterDummyReceiverObjects

type RegisterDummyReceiverObjects struct {
}

type RemovePackageIdStateObjectInput

type RemovePackageIdStateObjectInput struct {
	CCIPPackageId         string
	CCIPObjectRefObjectId string
	OwnerCapObjectId      string
	PackageId             string
}

type RemovePackageIdStateObjectObjects

type RemovePackageIdStateObjectObjects struct {
}

type TransferAdminRoleInput

type TransferAdminRoleInput struct {
	CCIPPackageId       string
	CCIPObjectRef       string
	CoinMetadataAddress string
	NewAdmin            string
}

type TransferOwnershipStateObjectInput

type TransferOwnershipStateObjectInput struct {
	CCIPPackageId         string
	CCIPObjectRefObjectId string
	OwnerCapObjectId      string
	To                    string
}

type TransferOwnershipStateObjectObjects

type TransferOwnershipStateObjectObjects struct {
}

type UnblockFunctionInput

type UnblockFunctionInput struct {
	PackageId        string // original package ID (MCMS registry identity; used as binary when LatestPackageId is "")
	LatestPackageId  string // optional: upgraded package ID (PTB execution target when set)
	StateObjectId    string
	OwnerCapObjectId string
	ModuleName       string
	FunctionName     string
	Version          uint8
}

type UnblockFunctionObjects

type UnblockFunctionObjects struct {
}

type UnblockVersionInput

type UnblockVersionInput struct {
	PackageId        string // original package ID (MCMS registry identity; used as binary when LatestPackageId is "")
	LatestPackageId  string // optional: upgraded package ID (PTB execution target when set)
	StateObjectId    string
	OwnerCapObjectId string
	ModuleName       string
	Version          uint8
}

type UnblockVersionObjects

type UnblockVersionObjects struct {
}

type UnregisterPoolInput

type UnregisterPoolInput struct {
	CCIPPackageId       string
	CCIPObjectRef       string
	CoinMetadataAddress string
}

type VerifyFunctionAllowedInput

type VerifyFunctionAllowedInput struct {
	CCIPPackageId   string
	StateObjectId   string
	ModuleName      string
	FunctionName    string
	ContractVersion uint8
}

type VerifyFunctionAllowedObjects

type VerifyFunctionAllowedObjects struct {
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL