Documentation
¶
Overview ¶
Package adapters registers Stellar with chainlink-ccip CCIP 2.0 tooling, with chainlink-ccv/deployment (per-concern FamilyRegistry singletons plus the shared JD identity plumbing), and with shared infrastructure (MCMS, transfer ownership, tokens, fees, curse).
Devenv-only hooks under chainlink-ccv/build/devenv (chain config loader, verifier/executor modifiers, ImplFactory, ExecutorInfo, CLDF provider, extra-args serializers) are not registered here; they live in ccv/chain/register.go and run when RegisterStellarDevenvComponents is called. See the package doc there for the full split. The ccvchain package blank-imports this package so its init runs as soon as ccvchain loads.
Index ¶
- type StellarCCVCommitteeVerifierOnchainAdapter
- func (a *StellarCCVCommitteeVerifierOnchainAdapter) ApplyAllowlistUpdates(ctx context.Context, env deployment.Environment, chainSelector uint64, ...) error
- func (a *StellarCCVCommitteeVerifierOnchainAdapter) ApplySignatureConfigs(ctx context.Context, env deployment.Environment, destChainSelector uint64, ...) error
- func (a *StellarCCVCommitteeVerifierOnchainAdapter) ScanCommitteeStates(ctx context.Context, env deployment.Environment, chainSelector uint64) ([]*ccvdeploymentadapters.CommitteeState, error)
- func (a *StellarCCVCommitteeVerifierOnchainAdapter) SetAllowedFinalityConfig(ctx context.Context, env deployment.Environment, chainSelector uint64, ...) error
- type StellarCCVDeploymentAggregatorConfigAdapter
- func (a *StellarCCVDeploymentAggregatorConfigAdapter) GetDeployedChains(ds datastore.DataStore, qualifier string) []uint64
- func (a *StellarCCVDeploymentAggregatorConfigAdapter) ResolveDestinationVerifierAddress(ds datastore.DataStore, chainSelector uint64, qualifier string) (string, error)
- func (a *StellarCCVDeploymentAggregatorConfigAdapter) ResolveSourceVerifierAddress(ds datastore.DataStore, chainSelector uint64, qualifier string) (string, error)
- type StellarCCVDeploymentExecutorConfigAdapter
- func (a *StellarCCVDeploymentExecutorConfigAdapter) BuildChainConfig(ds datastore.DataStore, chainSelector uint64, qualifier string) (executor.ChainConfiguration, error)
- func (a *StellarCCVDeploymentExecutorConfigAdapter) GetDeployedChains(ds datastore.DataStore, qualifier string) []uint64
- func (a *StellarCCVDeploymentExecutorConfigAdapter) ResolveExecutorAddress(ds datastore.DataStore, chainSelector uint64, qualifier string) (string, error)
- type StellarCCVDeploymentIndexerConfigAdapter
- type StellarCCVDeploymentTokenVerifierConfigAdapter
- type StellarCCVDeploymentVerifierConfigAdapter
- func (a *StellarCCVDeploymentVerifierConfigAdapter) GetSignerAddressFamily() string
- func (a *StellarCCVDeploymentVerifierConfigAdapter) ResolveVerifierContractAddresses(ds datastore.DataStore, chainSelector uint64, committeeQualifier string, ...) (*ccvdeploymentadapters.VerifierContractAddresses, error)
- type StellarChainFamilyAdapter
- func (a *StellarChainFamilyAdapter) AddressRefToBytes(ref datastore.AddressRef) ([]byte, error)
- func (a *StellarChainFamilyAdapter) ConfigureChainForLanes() ...
- func (a *StellarChainFamilyAdapter) GetAddressBytesLength() uint8
- func (a *StellarChainFamilyAdapter) GetChainFamilySelector() [4]byte
- func (a *StellarChainFamilyAdapter) GetDefaultCommitteeVerifierRemoteChainConfig() ccvadapters.CommitteeVerifierRemoteChainDefaults
- func (a *StellarChainFamilyAdapter) GetDefaultFeeQuoterDestChainConfig(_, _ uint64, chainFamilySelector [4]byte) ccvadapters.FeeQuoterDestChainConfigOverrides
- func (a *StellarChainFamilyAdapter) GetDefaultFinalityConfig() finality.Config
- func (a *StellarChainFamilyAdapter) GetDefaultGasPrice() *big.Int
- func (a *StellarChainFamilyAdapter) GetDefaultRemoteChainConfig(_, _ uint64) ccvadapters.RemoteChainDefaults
- func (a *StellarChainFamilyAdapter) GetFQAddress(ds datastore.DataStore, chainSelector uint64) ([]byte, error)
- func (a *StellarChainFamilyAdapter) GetFeeQuoterDestChainConfig() lanes.FeeQuoterDestChainConfig
- func (a *StellarChainFamilyAdapter) GetOffRampAddress(ds datastore.DataStore, chainSelector uint64) ([]byte, error)
- func (a *StellarChainFamilyAdapter) GetOnRampAddress(ds datastore.DataStore, chainSelector uint64) ([]byte, error)
- func (a *StellarChainFamilyAdapter) GetRouterAddress(ds datastore.DataStore, chainSelector uint64) ([]byte, error)
- func (a *StellarChainFamilyAdapter) GetTestRouter(ds datastore.DataStore, chainSelector uint64) ([]byte, error)
- func (a *StellarChainFamilyAdapter) ResolveExecutor(ds datastore.DataStore, chainSelector uint64, qualifier string) (string, error)
- func (a *StellarChainFamilyAdapter) ValidateNOPsTopology(_ string, _ int) error
- type StellarCommitteeVerifierContractAdapter
- func (a *StellarCommitteeVerifierContractAdapter) GetCommitteeVerifierResolver(ds datastore.DataStore, chainSelector uint64, qualifier string) ([]datastore.AddressRef, error)
- func (a *StellarCommitteeVerifierContractAdapter) ResolveCommitteeVerifierContracts(ds datastore.DataStore, chainSelector uint64, qualifier string) ([]datastore.AddressRef, error)
- type StellarCurseAdapter
- func (a *StellarCurseAdapter) Curse() ...
- func (a *StellarCurseAdapter) DeriveCurseAdapterVersion(_ cldf.Environment, _ uint64) (*semver.Version, error)
- func (a *StellarCurseAdapter) Initialize(e cldf.Environment, selector uint64) error
- func (a *StellarCurseAdapter) IsChainConnectedToTargetChain(e cldf.Environment, selector uint64, targetSel uint64) (bool, error)
- func (a *StellarCurseAdapter) IsCurseEnabledForChain(_ cldf.Environment, selector uint64) (bool, error)
- func (a *StellarCurseAdapter) IsSubjectCursedOnChain(e cldf.Environment, selector uint64, subject api.Subject) (bool, error)
- func (a *StellarCurseAdapter) ListConnectedChains(e cldf.Environment, selector uint64) ([]uint64, error)
- func (a *StellarCurseAdapter) SelectorToSubject(selector uint64) api.Subject
- func (a *StellarCurseAdapter) SubjectToSelector(subject api.Subject) (uint64, error)
- func (a *StellarCurseAdapter) Uncurse() ...
- type StellarDeployChainContractsAdapter
- func (a *StellarDeployChainContractsAdapter) BuildDeployContractParams(input ccvadapters.BuildDeployContractParamsInput) (ccvadapters.DeployContractParams, error)
- func (a *StellarDeployChainContractsAdapter) DeployChainContracts() ...
- func (a *StellarDeployChainContractsAdapter) GetDefaultDeployContractParams(_ uint64) ccvadapters.DeployContractParams
- func (a *StellarDeployChainContractsAdapter) ResolveDeployAddresses(e cldf.Environment, chainSelector uint64) (ccvadapters.DeployChainResolvedAddresses, error)
- type StellarFeeAdapter
- func (a *StellarFeeAdapter) ApplyDestChainConfigUpdates(_ datastore.DataStore, feeRef datastore.AddressRef) ...
- func (a *StellarFeeAdapter) GetDefaultDestChainConfig(_, _ uint64) lanes.FeeQuoterDestChainConfig
- func (a *StellarFeeAdapter) GetDefaultTokenTransferFeeConfig(_, _ uint64) fees.TokenTransferFeeArgs
- func (a *StellarFeeAdapter) GetFeeContractRef(_ cldf_ops.Bundle, _ cldf_chain.BlockChains, ds datastore.DataStore, ...) (datastore.AddressRef, error)
- func (a *StellarFeeAdapter) GetOnchainDestChainConfig(_ cldf_ops.Bundle, _ cldf_chain.BlockChains, fq datastore.AddressRef, _ uint64, ...) (lanes.FeeQuoterDestChainConfig, error)
- func (a *StellarFeeAdapter) GetOnchainTokenTransferFeeConfig(_ cldf_ops.Bundle, _ cldf_chain.BlockChains, fq datastore.AddressRef, _ uint64, ...) (fees.TokenTransferFeeArgs, error)
- func (a *StellarFeeAdapter) SetTokenTransferFee(_ datastore.DataStore, fq datastore.AddressRef) ...
- func (a *StellarFeeAdapter) Validate(_ cldf.Environment, feeRef datastore.AddressRef) error
- type StellarFeeAggregatorAdapter
- type StellarMCMSDeployer
- func (StellarMCMSDeployer) DeployChainContracts() ...
- func (StellarMCMSDeployer) DeployMCMS() ...
- func (StellarMCMSDeployer) FinalizeDeployMCMS() ...
- func (StellarMCMSDeployer) GrantAdminRoleToTimelock() ...
- func (StellarMCMSDeployer) SetOCR3Config() ...
- func (StellarMCMSDeployer) UpdateMCMSConfig() ...
- type StellarMCMSReader
- func (StellarMCMSReader) GetChainMetadata(e cldf.Environment, chainSelector uint64, input mcmsutils.Input) (mcmstypes.ChainMetadata, error)
- func (StellarMCMSReader) GetMCMSRef(e cldf.Environment, chainSelector uint64, input mcmsutils.Input) (frameworkdatastore.AddressRef, error)
- func (StellarMCMSReader) GetTimelockRef(e cldf.Environment, chainSelector uint64, input mcmsutils.Input) (frameworkdatastore.AddressRef, error)
- type StellarTokenAdapter
- func (a *StellarTokenAdapter) AddressRefToBytes(ref datastore.AddressRef) ([]byte, error)
- func (a *StellarTokenAdapter) ConfigureTokenForTransfersSequence() ...
- func (a *StellarTokenAdapter) DeployToken() ...
- func (a *StellarTokenAdapter) DeployTokenPoolForToken() ...
- func (a *StellarTokenAdapter) DeployTokenVerify(_ deployment.Environment, _ tokens.DeployTokenInput) error
- func (a *StellarTokenAdapter) DeriveTokenAddress(e deployment.Environment, chainSelector uint64, poolRef datastore.AddressRef) (string, error)
- func (a *StellarTokenAdapter) DeriveTokenDecimals(_ deployment.Environment, _ uint64, _ datastore.AddressRef, _ []byte) (uint8, error)
- func (a *StellarTokenAdapter) DeriveTokenPoolCounterpart(_ deployment.Environment, _ uint64, tokenPool []byte, _ []byte) ([]byte, error)
- func (a *StellarTokenAdapter) ManualRegistration() ...
- func (a *StellarTokenAdapter) MigrateLockReleasePoolLiquiditySequence() ...
- func (a *StellarTokenAdapter) SetTokenPoolRateLimits() ...
- func (a *StellarTokenAdapter) UpdateAuthorities() ...
- type StellarTransferOwnershipAdapter
- func (a *StellarTransferOwnershipAdapter) InitializeTimelockAddress(e cldf.Environment, input mcms.Input) error
- func (a *StellarTransferOwnershipAdapter) SequenceAcceptOwnership() ...
- func (a *StellarTransferOwnershipAdapter) SequenceTransferOwnershipViaMCMS() ...
- func (a *StellarTransferOwnershipAdapter) ShouldAcceptOwnershipWithTransferOwnership(e cldf.Environment, in deploy.TransferOwnershipPerChainInput) (bool, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type StellarCCVCommitteeVerifierOnchainAdapter ¶
type StellarCCVCommitteeVerifierOnchainAdapter struct{}
StellarCCVCommitteeVerifierOnchainAdapter implements chainlink-ccv/deployment/adapters.CommitteeVerifierOnchainAdapter for Stellar (Soroban committee_verifier), wiring GenerateAggregatorConfig and threshold changesets to the same on-chain reads/writes as the EVM adapter.
func (*StellarCCVCommitteeVerifierOnchainAdapter) ApplyAllowlistUpdates ¶ added in v0.0.7
func (a *StellarCCVCommitteeVerifierOnchainAdapter) ApplyAllowlistUpdates( ctx context.Context, env deployment.Environment, chainSelector uint64, qualifier string, destChainSelector uint64, allowlistEnabled bool, addedSenders []string, removedSenders []string, ) error
ApplyAllowlistUpdates updates the per-destination-chain sender allowlist on the Soroban committee_verifier.
Senders are Stellar strkeys (C… contract or G… account), not EVM hex: AllowListUpdate serializes them via scval.AddressSliceToScVal. Validate up front rather than letting a hex string through — HexToContractStrkey would happily mint a well-formed but wrong contract ID.
func (*StellarCCVCommitteeVerifierOnchainAdapter) ApplySignatureConfigs ¶
func (a *StellarCCVCommitteeVerifierOnchainAdapter) ApplySignatureConfigs( ctx context.Context, env deployment.Environment, destChainSelector uint64, qualifier string, change ccvdeploymentadapters.SignatureConfigChange, ) error
func (*StellarCCVCommitteeVerifierOnchainAdapter) ScanCommitteeStates ¶
func (a *StellarCCVCommitteeVerifierOnchainAdapter) ScanCommitteeStates( ctx context.Context, env deployment.Environment, chainSelector uint64, ) ([]*ccvdeploymentadapters.CommitteeState, error)
func (*StellarCCVCommitteeVerifierOnchainAdapter) SetAllowedFinalityConfig ¶ added in v0.0.7
func (a *StellarCCVCommitteeVerifierOnchainAdapter) SetAllowedFinalityConfig( ctx context.Context, env deployment.Environment, chainSelector uint64, qualifier string, waitForFinality bool, waitForSafe bool, blockDepth uint16, ) error
SetAllowedFinalityConfig is a no-op for Stellar.
The Soroban committee_verifier has no allowed-finality gate — set_allowed_finality_config exists only on the token pools (contracts/common/pool), and the verifier stores no finality state. Stellar ledgers are final on close, so every requested finality level is already accepted and the caller's request is already satisfied; recording that as a no-op is accurate, and returning an error instead would block mixed-family SetAllowedFinalityConfig runs for no on-chain benefit.
If the contract ever gains set_allowed_finality_config, wire it here.
type StellarCCVDeploymentAggregatorConfigAdapter ¶
type StellarCCVDeploymentAggregatorConfigAdapter struct{}
StellarCCVDeploymentAggregatorConfigAdapter implements github.com/smartcontractkit/chainlink-ccv/deployment/adapters.AggregatorConfigAdapter for the devenv (datastore-only verifier address resolution). On-chain committee state for GenerateAggregatorConfig lives on StellarCCVCommitteeVerifierOnchainAdapter.
func (*StellarCCVDeploymentAggregatorConfigAdapter) GetDeployedChains ¶
func (a *StellarCCVDeploymentAggregatorConfigAdapter) GetDeployedChains(ds datastore.DataStore, qualifier string) []uint64
func (*StellarCCVDeploymentAggregatorConfigAdapter) ResolveDestinationVerifierAddress ¶
func (*StellarCCVDeploymentAggregatorConfigAdapter) ResolveSourceVerifierAddress ¶
type StellarCCVDeploymentExecutorConfigAdapter ¶
type StellarCCVDeploymentExecutorConfigAdapter struct{}
StellarCCVDeploymentExecutorConfigAdapter implements github.com/smartcontractkit/chainlink-ccv/deployment/adapters.ExecutorConfigAdapter.
func (*StellarCCVDeploymentExecutorConfigAdapter) BuildChainConfig ¶
func (a *StellarCCVDeploymentExecutorConfigAdapter) BuildChainConfig( ds datastore.DataStore, chainSelector uint64, qualifier string, ) (executor.ChainConfiguration, error)
func (*StellarCCVDeploymentExecutorConfigAdapter) GetDeployedChains ¶
func (a *StellarCCVDeploymentExecutorConfigAdapter) GetDeployedChains(ds datastore.DataStore, qualifier string) []uint64
func (*StellarCCVDeploymentExecutorConfigAdapter) ResolveExecutorAddress ¶ added in v0.0.7
func (a *StellarCCVDeploymentExecutorConfigAdapter) ResolveExecutorAddress( ds datastore.DataStore, chainSelector uint64, qualifier string, ) (string, error)
ResolveExecutorAddress is the single source of truth for the Stellar executor address: BuildChainConfig uses it for DefaultExecutorAddress, and the committee verifier changeset uses it as the executor on-ramp address. Stellar keeps its existing ExecutorProxy datastore type — the adapter API no longer prescribes a contract-type name, but changing the recorded type would orphan every existing ref.
type StellarCCVDeploymentIndexerConfigAdapter ¶
type StellarCCVDeploymentIndexerConfigAdapter struct{}
StellarCCVDeploymentIndexerConfigAdapter implements github.com/smartcontractkit/chainlink-ccv/deployment/adapters.IndexerConfigAdapter.
func (*StellarCCVDeploymentIndexerConfigAdapter) ResolveVerifierAddresses ¶
func (a *StellarCCVDeploymentIndexerConfigAdapter) ResolveVerifierAddresses( ds datastore.DataStore, chainSelector uint64, qualifier string, kind ccvdeploymentadapters.VerifierKind, ) ([]string, error)
type StellarCCVDeploymentTokenVerifierConfigAdapter ¶
type StellarCCVDeploymentTokenVerifierConfigAdapter struct{}
StellarCCVDeploymentTokenVerifierConfigAdapter implements github.com/smartcontractkit/chainlink-ccv/deployment/adapters.TokenVerifierConfigAdapter.
func (*StellarCCVDeploymentTokenVerifierConfigAdapter) ResolveTokenVerifierAddresses ¶
func (a *StellarCCVDeploymentTokenVerifierConfigAdapter) ResolveTokenVerifierAddresses( ds datastore.DataStore, chainSelector uint64, _ string, _ string, ) (*ccvdeploymentadapters.TokenVerifierChainAddresses, error)
type StellarCCVDeploymentVerifierConfigAdapter ¶
type StellarCCVDeploymentVerifierConfigAdapter struct{}
StellarCCVDeploymentVerifierConfigAdapter implements github.com/smartcontractkit/chainlink-ccv/deployment/adapters.VerifierConfigAdapter.
func (*StellarCCVDeploymentVerifierConfigAdapter) GetSignerAddressFamily ¶
func (a *StellarCCVDeploymentVerifierConfigAdapter) GetSignerAddressFamily() string
func (*StellarCCVDeploymentVerifierConfigAdapter) ResolveVerifierContractAddresses ¶
func (a *StellarCCVDeploymentVerifierConfigAdapter) ResolveVerifierContractAddresses( ds datastore.DataStore, chainSelector uint64, committeeQualifier string, _ string, ) (*ccvdeploymentadapters.VerifierContractAddresses, error)
type StellarChainFamilyAdapter ¶
type StellarChainFamilyAdapter struct{}
StellarChainFamilyAdapter implements ccvadapters.ChainFamily for CCIP 2.0. Stellar does not register deployment/lanes.LaneAdapter: lane wiring is done via DeployContractsForSelector / ConfigureChainsForLanesFromTopology; the ConfigureChainForLanes hook applies committee verifier signature quorums (sequences.StellarConfigureChainForLanes). Legacy lanes.ConnectChains is unsupported for Stellar unless a LaneAdapter is reintroduced.
func (*StellarChainFamilyAdapter) AddressRefToBytes ¶
func (a *StellarChainFamilyAdapter) AddressRefToBytes(ref datastore.AddressRef) ([]byte, error)
func (*StellarChainFamilyAdapter) ConfigureChainForLanes ¶
func (a *StellarChainFamilyAdapter) ConfigureChainForLanes() *cldf_ops.Sequence[ccvadapters.ConfigureChainForLanesInput, seq_core.OnChainOutput, cldf_chain.BlockChains]
func (*StellarChainFamilyAdapter) GetAddressBytesLength ¶
func (a *StellarChainFamilyAdapter) GetAddressBytesLength() uint8
func (*StellarChainFamilyAdapter) GetChainFamilySelector ¶
func (a *StellarChainFamilyAdapter) GetChainFamilySelector() [4]byte
func (*StellarChainFamilyAdapter) GetDefaultCommitteeVerifierRemoteChainConfig ¶
func (a *StellarChainFamilyAdapter) GetDefaultCommitteeVerifierRemoteChainConfig() ccvadapters.CommitteeVerifierRemoteChainDefaults
func (*StellarChainFamilyAdapter) GetDefaultFeeQuoterDestChainConfig ¶
func (a *StellarChainFamilyAdapter) GetDefaultFeeQuoterDestChainConfig( _, _ uint64, chainFamilySelector [4]byte, ) ccvadapters.FeeQuoterDestChainConfigOverrides
func (*StellarChainFamilyAdapter) GetDefaultFinalityConfig ¶
func (a *StellarChainFamilyAdapter) GetDefaultFinalityConfig() finality.Config
func (*StellarChainFamilyAdapter) GetDefaultGasPrice ¶
func (a *StellarChainFamilyAdapter) GetDefaultGasPrice() *big.Int
func (*StellarChainFamilyAdapter) GetDefaultRemoteChainConfig ¶
func (a *StellarChainFamilyAdapter) GetDefaultRemoteChainConfig(_, _ uint64) ccvadapters.RemoteChainDefaults
func (*StellarChainFamilyAdapter) GetFQAddress ¶
func (*StellarChainFamilyAdapter) GetFeeQuoterDestChainConfig ¶
func (a *StellarChainFamilyAdapter) GetFeeQuoterDestChainConfig() lanes.FeeQuoterDestChainConfig
GetFeeQuoterDestChainConfig returns defaults for the legacy lanes package (e.g. connection profile helpers).
func (*StellarChainFamilyAdapter) GetOffRampAddress ¶
func (*StellarChainFamilyAdapter) GetOnRampAddress ¶
func (*StellarChainFamilyAdapter) GetRouterAddress ¶
func (*StellarChainFamilyAdapter) GetTestRouter ¶
func (*StellarChainFamilyAdapter) ResolveExecutor ¶
func (*StellarChainFamilyAdapter) ValidateNOPsTopology ¶ added in v0.0.7
func (a *StellarChainFamilyAdapter) ValidateNOPsTopology(_ string, _ int) error
ValidateNOPsTopology accepts any NOP count for Stellar.
The EVM adapter enforces a production floor (minProductionChainNOPs). Stellar has no such requirement agreed yet, and the devenv runs far fewer NOPs than EVM's floor, so copying that constant would fail every local and CI environment. Revisit when Stellar has a production committee-size policy.
type StellarCommitteeVerifierContractAdapter ¶
type StellarCommitteeVerifierContractAdapter struct{}
func (*StellarCommitteeVerifierContractAdapter) GetCommitteeVerifierResolver ¶
func (a *StellarCommitteeVerifierContractAdapter) GetCommitteeVerifierResolver( ds datastore.DataStore, chainSelector uint64, qualifier string, ) ([]datastore.AddressRef, error)
func (*StellarCommitteeVerifierContractAdapter) ResolveCommitteeVerifierContracts ¶
func (a *StellarCommitteeVerifierContractAdapter) ResolveCommitteeVerifierContracts( ds datastore.DataStore, chainSelector uint64, qualifier string, ) ([]datastore.AddressRef, error)
type StellarCurseAdapter ¶
type StellarCurseAdapter struct {
// contains filtered or unexported fields
}
StellarCurseAdapter implements both CurseAdapter and CurseSubjectAdapter for Stellar.
func NewStellarCurseAdapter ¶
func NewStellarCurseAdapter() *StellarCurseAdapter
func (*StellarCurseAdapter) Curse ¶
func (a *StellarCurseAdapter) Curse() *cldf_ops.Sequence[api.CurseInput, seqcore.OnChainOutput, cldf_chain.BlockChains]
func (*StellarCurseAdapter) DeriveCurseAdapterVersion ¶
func (a *StellarCurseAdapter) DeriveCurseAdapterVersion(_ cldf.Environment, _ uint64) (*semver.Version, error)
func (*StellarCurseAdapter) Initialize ¶
func (a *StellarCurseAdapter) Initialize(e cldf.Environment, selector uint64) error
func (*StellarCurseAdapter) IsChainConnectedToTargetChain ¶
func (a *StellarCurseAdapter) IsChainConnectedToTargetChain(e cldf.Environment, selector uint64, targetSel uint64) (bool, error)
func (*StellarCurseAdapter) IsCurseEnabledForChain ¶
func (a *StellarCurseAdapter) IsCurseEnabledForChain(_ cldf.Environment, selector uint64) (bool, error)
func (*StellarCurseAdapter) IsSubjectCursedOnChain ¶
func (a *StellarCurseAdapter) IsSubjectCursedOnChain(e cldf.Environment, selector uint64, subject api.Subject) (bool, error)
func (*StellarCurseAdapter) ListConnectedChains ¶
func (a *StellarCurseAdapter) ListConnectedChains(e cldf.Environment, selector uint64) ([]uint64, error)
func (*StellarCurseAdapter) SelectorToSubject ¶
func (a *StellarCurseAdapter) SelectorToSubject(selector uint64) api.Subject
func (*StellarCurseAdapter) SubjectToSelector ¶
func (a *StellarCurseAdapter) SubjectToSelector(subject api.Subject) (uint64, error)
func (*StellarCurseAdapter) Uncurse ¶
func (a *StellarCurseAdapter) Uncurse() *cldf_ops.Sequence[api.CurseInput, seqcore.OnChainOutput, cldf_chain.BlockChains]
type StellarDeployChainContractsAdapter ¶
type StellarDeployChainContractsAdapter struct{}
StellarDeployChainContractsAdapter connects Stellar to the shared deployment/v2_0_0 DeployChainContracts changeset.
The Stellar deploy sequence derives its on-chain contract parameters from the offchain topology stashed during CCV PreDeployContractsForSelector (see sequences.StellarDeployChainContracts), so DeployContractParams and DeployerContract are threaded through for changeset parity but not consumed by the deploy itself.
func (*StellarDeployChainContractsAdapter) BuildDeployContractParams ¶ added in v0.0.7
func (a *StellarDeployChainContractsAdapter) BuildDeployContractParams(input ccvadapters.BuildDeployContractParamsInput) (ccvadapters.DeployContractParams, error)
BuildDeployContractParams implements ccvadapters.DeployChainContractsAdapter.
func (*StellarDeployChainContractsAdapter) DeployChainContracts ¶
func (a *StellarDeployChainContractsAdapter) DeployChainContracts() *cldf_ops.Sequence[ccvadapters.DeployChainContractsInput, ccvadapters.DeployChainContractsOutput, cldf_chain.BlockChains]
DeployChainContracts implements ccvadapters.DeployChainContractsAdapter.
func (*StellarDeployChainContractsAdapter) GetDefaultDeployContractParams ¶ added in v0.0.7
func (a *StellarDeployChainContractsAdapter) GetDefaultDeployContractParams(_ uint64) ccvadapters.DeployContractParams
GetDefaultDeployContractParams implements ccvadapters.DeployChainContractsAdapter.
func (*StellarDeployChainContractsAdapter) ResolveDeployAddresses ¶ added in v0.0.7
func (a *StellarDeployChainContractsAdapter) ResolveDeployAddresses(e cldf.Environment, chainSelector uint64) (ccvadapters.DeployChainResolvedAddresses, error)
ResolveDeployAddresses implements ccvadapters.DeployChainContractsAdapter. Soroban has no CREATE2-style deployer factory to resolve; this only validates the chain is present in the environment.
type StellarFeeAdapter ¶
type StellarFeeAdapter struct{}
StellarFeeAdapter implements fees.FeeAdapter for the Stellar FeeQuoter.
func (*StellarFeeAdapter) ApplyDestChainConfigUpdates ¶
func (a *StellarFeeAdapter) ApplyDestChainConfigUpdates(_ datastore.DataStore, feeRef datastore.AddressRef) *cldf_ops.Sequence[fees.ApplyDestChainConfigSequenceInput, seqcore.OnChainOutput, cldf_chain.BlockChains]
func (*StellarFeeAdapter) GetDefaultDestChainConfig ¶
func (a *StellarFeeAdapter) GetDefaultDestChainConfig(_, _ uint64) lanes.FeeQuoterDestChainConfig
func (*StellarFeeAdapter) GetDefaultTokenTransferFeeConfig ¶
func (a *StellarFeeAdapter) GetDefaultTokenTransferFeeConfig(_, _ uint64) fees.TokenTransferFeeArgs
func (*StellarFeeAdapter) GetFeeContractRef ¶
func (a *StellarFeeAdapter) GetFeeContractRef(_ cldf_ops.Bundle, _ cldf_chain.BlockChains, ds datastore.DataStore, onRamp datastore.AddressRef, src uint64, dst uint64) (datastore.AddressRef, error)
func (*StellarFeeAdapter) GetOnchainDestChainConfig ¶
func (a *StellarFeeAdapter) GetOnchainDestChainConfig(_ cldf_ops.Bundle, _ cldf_chain.BlockChains, fq datastore.AddressRef, _ uint64, _ uint64) (lanes.FeeQuoterDestChainConfig, error)
func (*StellarFeeAdapter) GetOnchainTokenTransferFeeConfig ¶
func (a *StellarFeeAdapter) GetOnchainTokenTransferFeeConfig(_ cldf_ops.Bundle, _ cldf_chain.BlockChains, fq datastore.AddressRef, _ uint64, _ uint64, _ string) (fees.TokenTransferFeeArgs, error)
func (*StellarFeeAdapter) SetTokenTransferFee ¶
func (a *StellarFeeAdapter) SetTokenTransferFee(_ datastore.DataStore, fq datastore.AddressRef) *cldf_ops.Sequence[fees.SetTokenTransferFeeSequenceInput, seqcore.OnChainOutput, cldf_chain.BlockChains]
func (*StellarFeeAdapter) Validate ¶
func (a *StellarFeeAdapter) Validate(_ cldf.Environment, feeRef datastore.AddressRef) error
Validate validates the FeeQuoter address reference for Stellar. Stellar contract IDs should be 32 bytes when decoded from hex.
type StellarFeeAggregatorAdapter ¶
type StellarFeeAggregatorAdapter struct{}
StellarFeeAggregatorAdapter implements fees.FeeAggregatorAdapter. SetFeeAggregator updates OnRamp dynamic config, VVR, and CommitteeVerifier (see stellarsequences.ApplyStellarFeeAggregator). GetFeeAggregator reads the canonical value from the Versioned Verifier Resolver.
func (*StellarFeeAggregatorAdapter) GetFeeAggregator ¶
func (a *StellarFeeAggregatorAdapter) GetFeeAggregator(e cldf.Environment, chainSelector uint64) (string, error)
func (*StellarFeeAggregatorAdapter) SetFeeAggregator ¶
func (a *StellarFeeAggregatorAdapter) SetFeeAggregator(e cldf.Environment) *cldf_ops.Sequence[fees.FeeAggregatorForChain, seqcore.OnChainOutput, cldf_chain.BlockChains]
type StellarMCMSDeployer ¶
type StellarMCMSDeployer struct{}
StellarMCMSDeployer implements deploy.Deployer MCMS-related methods for Soroban. DeployChainContracts and SetOCR3Config are nil (CCIP 2.0 uses DeployChainContractsAdapter).
func (StellarMCMSDeployer) DeployChainContracts ¶
func (StellarMCMSDeployer) DeployChainContracts() *cldfops.Sequence[deploy.ContractDeploymentConfigPerChainWithAddress, seqcore.OnChainOutput, cldfchain.BlockChains]
func (StellarMCMSDeployer) DeployMCMS ¶
func (StellarMCMSDeployer) DeployMCMS() *cldfops.Sequence[deploy.MCMSDeploymentConfigPerChainWithAddress, seqcore.OnChainOutput, cldfchain.BlockChains]
func (StellarMCMSDeployer) FinalizeDeployMCMS ¶
func (StellarMCMSDeployer) FinalizeDeployMCMS() *cldfops.Sequence[deploy.MCMSDeploymentConfigPerChainWithAddress, seqcore.OnChainOutput, cldfchain.BlockChains]
func (StellarMCMSDeployer) GrantAdminRoleToTimelock ¶
func (StellarMCMSDeployer) GrantAdminRoleToTimelock() *cldfops.Sequence[deploy.GrantAdminRoleToTimelockConfigPerChainWithSelector, seqcore.OnChainOutput, cldfchain.BlockChains]
func (StellarMCMSDeployer) SetOCR3Config ¶
func (StellarMCMSDeployer) SetOCR3Config() *cldfops.Sequence[deploy.SetOCR3ConfigInput, seqcore.OnChainOutput, cldfchain.BlockChains]
func (StellarMCMSDeployer) UpdateMCMSConfig ¶
func (StellarMCMSDeployer) UpdateMCMSConfig() *cldfops.Sequence[deploy.UpdateMCMSConfigInputPerChainWithSelector, seqcore.OnChainOutput, cldfchain.BlockChains]
type StellarMCMSReader ¶
type StellarMCMSReader struct{}
StellarMCMSReader implements changesets.MCMSReader for a single Soroban MCMS contract (proposer/bypasser/canceller share one on-chain instance; datastore may hold alias refs).
func (StellarMCMSReader) GetChainMetadata ¶
func (StellarMCMSReader) GetChainMetadata(e cldf.Environment, chainSelector uint64, input mcmsutils.Input) (mcmstypes.ChainMetadata, error)
GetChainMetadata implements changesets.MCMSReader.
func (StellarMCMSReader) GetMCMSRef ¶
func (StellarMCMSReader) GetMCMSRef(e cldf.Environment, chainSelector uint64, input mcmsutils.Input) (frameworkdatastore.AddressRef, error)
GetMCMSRef implements changesets.MCMSReader.
func (StellarMCMSReader) GetTimelockRef ¶
func (StellarMCMSReader) GetTimelockRef(e cldf.Environment, chainSelector uint64, input mcmsutils.Input) (frameworkdatastore.AddressRef, error)
GetTimelockRef implements changesets.MCMSReader. Prefers RBACTimelock in the datastore; falls back to the MCMS contract id for legacy deployments.
type StellarTokenAdapter ¶
type StellarTokenAdapter struct{}
StellarTokenAdapter implements tokens.TokenAdapter for Stellar token pools. Pool deployment and TAR registration are handled by the Stellar deploy pipeline (PostDeployContractsForSelector), so most sequences are no-ops. The adapter's primary role is to provide address encoding so that the shared ConfigureTokensForTransfers changeset can resolve Stellar pool/token addresses when configuring EVM pools with Stellar remotes.
func (*StellarTokenAdapter) AddressRefToBytes ¶
func (a *StellarTokenAdapter) AddressRefToBytes(ref datastore.AddressRef) ([]byte, error)
func (*StellarTokenAdapter) ConfigureTokenForTransfersSequence ¶
func (a *StellarTokenAdapter) ConfigureTokenForTransfersSequence() *cldf_ops.Sequence[tokens.ConfigureTokenForTransfersInput, sequences.OnChainOutput, cldf_chain.BlockChains]
func (*StellarTokenAdapter) DeployToken ¶
func (a *StellarTokenAdapter) DeployToken() *cldf_ops.Sequence[tokens.DeployTokenInput, sequences.OnChainOutput, cldf_chain.BlockChains]
func (*StellarTokenAdapter) DeployTokenPoolForToken ¶
func (a *StellarTokenAdapter) DeployTokenPoolForToken() *cldf_ops.Sequence[tokens.DeployTokenPoolInput, sequences.OnChainOutput, cldf_chain.BlockChains]
func (*StellarTokenAdapter) DeployTokenVerify ¶
func (a *StellarTokenAdapter) DeployTokenVerify(_ deployment.Environment, _ tokens.DeployTokenInput) error
func (*StellarTokenAdapter) DeriveTokenAddress ¶
func (a *StellarTokenAdapter) DeriveTokenAddress(e deployment.Environment, chainSelector uint64, poolRef datastore.AddressRef) (string, error)
func (*StellarTokenAdapter) DeriveTokenDecimals ¶
func (a *StellarTokenAdapter) DeriveTokenDecimals(_ deployment.Environment, _ uint64, _ datastore.AddressRef, _ []byte) (uint8, error)
func (*StellarTokenAdapter) DeriveTokenPoolCounterpart ¶
func (a *StellarTokenAdapter) DeriveTokenPoolCounterpart(_ deployment.Environment, _ uint64, tokenPool []byte, _ []byte) ([]byte, error)
func (*StellarTokenAdapter) ManualRegistration ¶
func (a *StellarTokenAdapter) ManualRegistration() *cldf_ops.Sequence[tokens.ManualRegistrationSequenceInput, sequences.OnChainOutput, cldf_chain.BlockChains]
func (*StellarTokenAdapter) MigrateLockReleasePoolLiquiditySequence ¶
func (a *StellarTokenAdapter) MigrateLockReleasePoolLiquiditySequence() *cldf_ops.Sequence[tokens.MigrateLockReleasePoolLiquidityInput, sequences.OnChainOutput, cldf_chain.BlockChains]
func (*StellarTokenAdapter) SetTokenPoolRateLimits ¶
func (a *StellarTokenAdapter) SetTokenPoolRateLimits() *cldf_ops.Sequence[tokens.TPRLRemotes, sequences.OnChainOutput, cldf_chain.BlockChains]
func (*StellarTokenAdapter) UpdateAuthorities ¶
func (a *StellarTokenAdapter) UpdateAuthorities() *cldf_ops.Sequence[tokens.UpdateAuthoritiesInput, sequences.OnChainOutput, *deployment.Environment]
type StellarTransferOwnershipAdapter ¶
type StellarTransferOwnershipAdapter struct {
// contains filtered or unexported fields
}
StellarTransferOwnershipAdapter builds MCMS batch operations (or executes directly when the deployer account is still owner). Wiring matches EVM OpTransferOwnership / OpAcceptOwnership: the datastore timelock (governance) address gates the MCMS-batch path; MCMS contract address is not required to equal timelock.
func (*StellarTransferOwnershipAdapter) InitializeTimelockAddress ¶
func (a *StellarTransferOwnershipAdapter) InitializeTimelockAddress(e cldf.Environment, input mcms.Input) error
InitializeTimelockAddress caches the RBAC timelock (governance) address per chain from the datastore — same responsibility as the EVM adapter’s timelock cache.
func (*StellarTransferOwnershipAdapter) SequenceAcceptOwnership ¶
func (a *StellarTransferOwnershipAdapter) SequenceAcceptOwnership() *cldfops.Sequence[deploy.TransferOwnershipPerChainInput, seqcore.OnChainOutput, cldfchain.BlockChains]
func (*StellarTransferOwnershipAdapter) SequenceTransferOwnershipViaMCMS ¶
func (a *StellarTransferOwnershipAdapter) SequenceTransferOwnershipViaMCMS() *cldfops.Sequence[deploy.TransferOwnershipPerChainInput, seqcore.OnChainOutput, cldfchain.BlockChains]
func (*StellarTransferOwnershipAdapter) ShouldAcceptOwnershipWithTransferOwnership ¶
func (a *StellarTransferOwnershipAdapter) ShouldAcceptOwnershipWithTransferOwnership(e cldf.Environment, in deploy.TransferOwnershipPerChainInput) (bool, error)
ShouldAcceptOwnershipWithTransferOwnership matches EVM: run accept when ProposedOwner is the timelock (governance) or the deployer.
Source Files
¶
- ccv_committee_verifier_onchain.go
- ccv_deployment_adapters.go
- committee_verifier_contract_adapter.go
- deploy_chain_contracts.go
- init.go
- stellar_chain_family_adapter.go
- stellar_curse_adapter.go
- stellar_fee_adapter.go
- stellar_fee_aggregator_adapter.go
- stellar_mcms_deployer.go
- stellar_mcms_reader.go
- stellar_transfer_ownership_adapter.go
- token_adapter.go