Splice.Amulet

The contracts representing the long-term state of Splice.

Templates

template Amulet

A amulet, which can be locked and whose amount expires over time.

The expiry serves to charge an inactivity fee, and thereby ensures that the SVs can reclaim the corresponding storage space at some point in the future.

Signatory: dso, owner

Field

Type

Description

dso

Party

owner

Party

amount

ExpiringAmount

template AppRewardCoupon

A coupon for receiving app rewards proportional to the usage fee paid as part of a Amulet transfer coordinated by the app of a provider.

Signatory: dso

Field

Type

Description

dso

Party

provider

Party

Application provider

featured

Bool

amount

Decimal

round

Round

template FeaturedAppRight

The right for an application provider to earn featured app rewards.

Signatory: dso

Field

Type

Description

dso

Party

provider

Party

template LockedAmulet

Signatory: (DA.Internal.Record.getField @"holders" lock), signatory amulet

Field

Type

Description

amulet

Amulet

lock

TimeLock

template SvRewardCoupon

A coupon for a beneficiary to receive part of the SV issuance for a specific SV node and round.

Signatory: dso

Field

Type

Description

dso

Party

sv

Party

The party identifying the SV node for which the reward is issued.

beneficiary

Party

The beneficiary allowed to receive the reward.

round

Round

weight

Int

Coupons receive a share of the SV issuance proportional to their weight.

template UnclaimedReward

Rewards that have not been claimed and are thus at the disposal of the foundation.

Signatory: dso

Field

Type

Description

dso

Party

amount

Decimal

  • Choice Archive

    Controller: dso

    Returns: ()

    (no fields)

template ValidatorRewardCoupon

A coupon for receiving validator rewards proportional to the usage fee paid by a user hosted by a validator operator.

Signatory: dso

Field

Type

Description

dso

Party

user

Party

amount

Decimal

round

Round

template ValidatorRight

The right to claim amulet issuances for a user’s burns as their validator.

Signatory: user, validator

Field

Type

Description

dso

Party

user

Party

validator

Party

Data Types

data AmuletCreateSummary amuletContractId

Result of an operation that created a new amulet, e.g., by minting a fresh amulet, or by unlocking a locked amulet.

AmuletCreateSummary

Field

Type

Description

amulet

amuletContractId

The new amulet that was created

amuletPrice

Decimal

The amulet price at the round the amulet was created

round

Round

Round for which this amulet was created.

instance GetField "amulet" (AmuletCreateSummary amuletContractId) amuletContractId

instance GetField "amuletPrice" (AmuletCreateSummary amuletContractId) Decimal

instance GetField "amuletSum" LockedAmulet_OwnerExpireLockResult (AmuletCreateSummary (ContractId Amulet))

instance GetField "amuletSum" LockedAmulet_UnlockResult (AmuletCreateSummary (ContractId Amulet))

instance GetField "amuletSum" AmuletRules_DevNet_TapResult (AmuletCreateSummary (ContractId Amulet))

instance GetField "amuletSum" AmuletRules_MintResult (AmuletCreateSummary (ContractId Amulet))

instance GetField "round" (AmuletCreateSummary amuletContractId) Round

instance SetField "amulet" (AmuletCreateSummary amuletContractId) amuletContractId

instance SetField "amuletPrice" (AmuletCreateSummary amuletContractId) Decimal

instance SetField "amuletSum" LockedAmulet_OwnerExpireLockResult (AmuletCreateSummary (ContractId Amulet))

instance SetField "amuletSum" LockedAmulet_UnlockResult (AmuletCreateSummary (ContractId Amulet))

instance SetField "amuletSum" AmuletRules_DevNet_TapResult (AmuletCreateSummary (ContractId Amulet))

instance SetField "amuletSum" AmuletRules_MintResult (AmuletCreateSummary (ContractId Amulet))

instance SetField "round" (AmuletCreateSummary amuletContractId) Round

data AmuletExpireSummary

AmuletExpireSummary

Field

Type

Description

owner

Party

round

Round

Round for which this expiry was registered.

changeToInitialAmountAsOfRoundZero

Decimal

changeToHoldingFeesRate

Decimal

The change of total holding fees introduced by a amulet expiry.

instance GetField "changeToHoldingFeesRate" AmuletExpireSummary Decimal

instance GetField "changeToInitialAmountAsOfRoundZero" AmuletExpireSummary Decimal

instance GetField "expireSum" Amulet_ExpireResult AmuletExpireSummary

instance GetField "expireSum" LockedAmulet_ExpireAmuletResult AmuletExpireSummary

instance GetField "owner" AmuletExpireSummary Party

instance GetField "round" AmuletExpireSummary Round

instance SetField "changeToHoldingFeesRate" AmuletExpireSummary Decimal

instance SetField "changeToInitialAmountAsOfRoundZero" AmuletExpireSummary Decimal

instance SetField "expireSum" Amulet_ExpireResult AmuletExpireSummary

instance SetField "expireSum" LockedAmulet_ExpireAmuletResult AmuletExpireSummary

instance SetField "owner" AmuletExpireSummary Party

instance SetField "round" AmuletExpireSummary Round

data Amulet_ExpireResult

data AppRewardCoupon_DsoExpireResult

data FeaturedAppRight_CancelResult

data FeaturedAppRight_WithdrawResult

data LockedAmulet_ExpireAmuletResult

data LockedAmulet_OwnerExpireLockResult

data LockedAmulet_UnlockResult

data SvRewardCoupon_ArchiveAsBeneficiaryResult

data SvRewardCoupon_DsoExpireResult

data ValidatorRewardCoupon_ArchiveAsValidatorResult

data ValidatorRewardCoupon_DsoExpireResult

data ValidatorRight_ArchiveAsUserResult

data ValidatorRight_ArchiveAsValidatorResult

Functions

requireAmuletExpiredForAllOpenRounds

: ContractId OpenMiningRound -> Amulet -> Update ()