Skip to content
Open
Show file tree
Hide file tree
Changes from 63 commits
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
d718b53
cip-82: add DevelopmentFundCoupon template
jose-velasco-ieu Nov 4, 2025
2fe10e2
cip-82: add DevelopmentFundConfig to AmuletConfig
jose-velasco-ieu Nov 4, 2025
862128a
cip-82: add InputDevelopmentFundCoupon to TransferInput
jose-velasco-ieu Nov 4, 2025
6a03cc6
cip-82: update comment
jose-velasco-ieu Nov 4, 2025
2bf915d
cip-82: remove round from DevelopmentFundCoupon
jose-velasco-ieu Nov 4, 2025
30dca7c
cip-82: add AmuletRules_MergeDevelopmentFundCoupons
jose-velasco-ieu Nov 4, 2025
06dea40
cip-82: add DsoRules_MergeDevelopmentFundCoupons
jose-velasco-ieu Nov 4, 2025
020a352
cip-82: change issuance computation to deduct the fund issuance + cre…
jose-velasco-ieu Nov 5, 2025
02bc54e
cip-82: add note
jose-velasco-ieu Nov 5, 2025
dbc2868
cip-82: naming
jose-velasco-ieu Nov 5, 2025
ae16fe1
Update daml/splice-amulet/daml/Splice/AmuletConfig.daml
jose-velasco-ieu Nov 6, 2025
e4e929f
Update daml/splice-amulet/daml/Splice/AmuletRules.daml
jose-velasco-ieu Nov 6, 2025
34d1d88
Update daml/splice-amulet/daml/Splice/Issuance.daml
jose-velasco-ieu Nov 6, 2025
986ddbc
Update daml/splice-amulet/daml/Splice/Issuance.daml
jose-velasco-ieu Nov 6, 2025
68177fd
Update daml/splice-amulet/daml/Splice/Issuance.daml
jose-velasco-ieu Nov 6, 2025
3a855cf
Update daml/splice-dso-governance/daml/Splice/DsoRules.daml
jose-velasco-ieu Nov 6, 2025
f9a596f
Update daml/splice-dso-governance/daml/Splice/DsoRules.daml
jose-velasco-ieu Nov 6, 2025
735973e
Update daml/splice-dso-governance/daml/Splice/DsoRules.daml
jose-velasco-ieu Nov 6, 2025
2c2ed21
Update daml/splice-amulet/daml/Splice/Amulet.daml
jose-velasco-ieu Nov 6, 2025
283bded
cip-82: fix daml build (DsoRules_MergeDevelopmentFundCoupons)
jose-velasco-ieu Nov 6, 2025
0f4fc88
cip-82: refine documentation to remove references to config fields
jose-velasco-ieu Nov 6, 2025
96efe74
cip-82: make beneficiary optional to decouple fund issuance activatio…
jose-velasco-ieu Nov 6, 2025
dda8acb
cip-82: replace DevelomentFundConfig with IssuanceConfig.optDevelopme…
jose-velasco-ieu Nov 6, 2025
cbb7274
cip-82: add unit test for issuance with 5% development fund
jose-velasco-ieu Nov 10, 2025
bbe7562
cip-82: add optDevelopmentFundPercentage value to testAmuletRulesConf…
jose-velasco-ieu Nov 10, 2025
141206f
cip-82: add optDevelopmentFundBeneficiary value to testAmuletRulesCon…
jose-velasco-ieu Nov 10, 2025
7d7eb97
cip-82: add initDevNetWithAmuletConfig test helper
jose-velasco-ieu Nov 10, 2025
5092296
cip-82: test merging of Development Fund coupons
jose-velasco-ieu Nov 10, 2025
462436a
cip-82 - minor fix in comments/error message
jose-velasco-ieu Nov 11, 2025
1c46c2c
cip-82: add test for InputDevelopmentFundCoupon
jose-velasco-ieu Nov 11, 2025
2724303
Update daml/splice-amulet/daml/Splice/Issuance.daml
jose-velasco-ieu Nov 13, 2025
465e3a5
Update daml/splice-dso-governance/daml/Splice/DsoRules.daml
jose-velasco-ieu Nov 13, 2025
3e4a3b5
cip-82: fix daml build
jose-velasco-ieu Nov 13, 2025
fe78760
cip-82: remove unneeded comment
jose-velasco-ieu Nov 13, 2025
2723329
cip-82: rename DevelopmentFundCoupon to UnclaimedDevelopmentFundCoupon
jose-velasco-ieu Nov 24, 2025
b19e2ab
cip-82: add DevelopmentFundCoupon template
jose-velasco-ieu Nov 24, 2025
e15cd34
cip-82: remove optDevelopmentFundBeneficiary + update DevelopmentFund…
jose-velasco-ieu Nov 24, 2025
48e2225
cip-82: add optDevelopmentFundManager to IssuanceConfig
jose-velasco-ieu Nov 24, 2025
a495f8e
cip-82: add AmuletRules_AllocateDevelopmentFundCoupon
jose-velasco-ieu Nov 24, 2025
dbe17e5
cip-82: remove fundManager as signatory and make it an observer in De…
jose-velasco-ieu Nov 24, 2025
fb3cde6
cip-82: update testInputDevelopmentFundCoupon for the new design
jose-velasco-ieu Nov 24, 2025
cb83d1f
cip-82: add test covering AmuletRules_AllocateDevelopmentFundCoupon
jose-velasco-ieu Nov 25, 2025
5080fc4
cip-82: add expiry and withdrawal support to DevelopmentFundCoupon
jose-velasco-ieu Nov 25, 2025
a3159fd
cip-82: add DsoRules_ExpireDevelopmentFundCoupon choice to expire a D…
jose-velasco-ieu Nov 26, 2025
7f7a02d
Update daml/splice-amulet/daml/Splice/Amulet.daml
jose-velasco-ieu Nov 27, 2025
531763c
Update daml/splice-amulet/daml/Splice/Amulet.daml
jose-velasco-ieu Nov 27, 2025
848c323
Update daml/splice-amulet/daml/Splice/Amulet.daml
jose-velasco-ieu Nov 27, 2025
e5f13e4
Update daml/splice-amulet/daml/Splice/Amulet.daml
jose-velasco-ieu Nov 27, 2025
6fd152e
cip-82: fix daml build (reason in Withdraw)
jose-velasco-ieu Nov 27, 2025
7553b47
cip-82: replace getValueAsOf with getValueAsOfLedgerTime to properly …
jose-velasco-ieu Nov 27, 2025
49f15be
cip-82: replace (expiresAt > now) with asertWithinDeadline to support…
jose-velasco-ieu Nov 27, 2025
449a6f0
cip-82: add DevelopmentFundCoupon_DsoExpire + test
jose-velasco-ieu Nov 27, 2025
ce03033
cip-82: check dev fund input amount is correctly reported
jose-velasco-ieu Nov 27, 2025
319f0c0
cip-82: check dev fund coupon deadline in AmuletRules_Transfer
jose-velasco-ieu Nov 27, 2025
cc566a3
cip-82: move optDevelopmentFundManager to AmuletConfig
jose-velasco-ieu Nov 27, 2025
287ea0b
cip-82: abstract replacement of dev fund configuration
jose-velasco-ieu Nov 28, 2025
87aa85a
cip-82: formatting
jose-velasco-ieu Nov 28, 2025
3bcdb37
cip-82: add a reason to DevelopmentFundCoupon
jose-velasco-ieu Dec 15, 2025
8d78850
cip-82: add rejection choice to DevelopmentFundCoupon
jose-velasco-ieu Dec 15, 2025
0d52e14
cip-82: bump daml versions
jose-velasco-ieu Dec 17, 2025
cbe5393
cip-82: fix Scala compilation
jose-velasco-ieu Dec 17, 2025
fdc2dc7
cip-82: fix ts
jose-velasco-ieu Dec 17, 2025
b70ceea
cip-82: make IssuingRoundParameters compliant with SCU
jose-velasco-ieu Dec 18, 2025
d56e441
Update daml/splice-amulet/daml/Splice/AmuletRules.daml
jose-velasco-ieu Dec 18, 2025
a0c0f2f
cip-82: improve clarity + missing assertion
jose-velasco-ieu Dec 18, 2025
4483a8c
cip-82: improve documentation
jose-velasco-ieu Dec 18, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -258,6 +258,7 @@ class AppUpgradeIntegrationTest
),
java.util.Optional.empty(),
java.util.Optional.empty(),
java.util.Optional.empty(),
)
val upgradeAction = new ARC_AmuletRules(
new CRARC_SetConfig(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -224,6 +224,7 @@ class BootstrapPackageConfigIntegrationTest extends IntegrationTest with Splitwe
),
java.util.Optional.empty(),
java.util.Optional.empty(),
java.util.Optional.empty(),
)

val upgradeAction = new ARC_AmuletRules(
Expand Down Expand Up @@ -363,6 +364,7 @@ class BootstrapPackageConfigIntegrationTest extends IntegrationTest with Splitwe
amuletConfig.packageConfig,
java.util.Optional.empty(),
java.util.Optional.empty(),
java.util.Optional.empty(),
)

val upgradeAction = new ARC_AmuletRules(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,7 @@ class SvReconcileSynchronizerConfigIntegrationTest extends SvIntegrationTestBase
amuletConfig.packageConfig,
java.util.Optional.empty(),
java.util.Optional.empty(),
java.util.Optional.empty(),
)

}
Original file line number Diff line number Diff line change
Expand Up @@ -487,6 +487,7 @@ class SvStateManagementIntegrationTest extends SvIntegrationTestBase with Trigge
initialConfig.packageConfig,
java.util.Optional.empty(),
java.util.Optional.empty(),
java.util.Optional.empty(),
)

val (_, voteRequestCid) = actAndCheck(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ trait AmuletConfigUtil extends TestCommon {
existingAmuletConfig.packageConfig,
existingAmuletConfig.transferPreapprovalFee,
existingAmuletConfig.featuredAppActivityMarkerAmount,
existingAmuletConfig.optDevelopmentFundManager,
)
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,7 @@ export function getAmuletRulesConfig(
amuletToIssuePerYear: '40000000000.0',
validatorRewardCap: '0.2',
optValidatorFaucetCap: '2.85',
optDevelopmentFundPercentage: '0.05',
},
futureValues: [
{
Expand All @@ -172,6 +173,7 @@ export function getAmuletRulesConfig(
amuletToIssuePerYear: '20000000000.0',
validatorRewardCap: '0.2',
optValidatorFaucetCap: '2.85',
optDevelopmentFundPercentage: '0.05',
},
},
{
Expand All @@ -186,6 +188,7 @@ export function getAmuletRulesConfig(
amuletToIssuePerYear: '10000000000.0',
validatorRewardCap: '0.2',
optValidatorFaucetCap: '2.85',
optDevelopmentFundPercentage: '0.05',
},
},
{
Expand All @@ -200,6 +203,7 @@ export function getAmuletRulesConfig(
amuletToIssuePerYear: '5000000000.0',
validatorRewardCap: '0.2',
optValidatorFaucetCap: '2.85',
optDevelopmentFundPercentage: '0.05',
},
},
{
Expand All @@ -214,12 +218,14 @@ export function getAmuletRulesConfig(
amuletToIssuePerYear: '2500000000.0',
validatorRewardCap: '0.2',
optValidatorFaucetCap: '2.85',
optDevelopmentFundPercentage: '0.05',
},
},
],
},
transferPreapprovalFee: null,
featuredAppActivityMarkerAmount: null,
optDevelopmentFundManager: null,
};
}

Expand Down
6 changes: 6 additions & 0 deletions apps/common/frontend/src/__tests__/mocks/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@ export const plannedVoteResult: DsoRules_CloseVoteRequestResult = {
featuredAppRewardCap: '100.0',
unfeaturedAppRewardCap: '0.6',
optValidatorFaucetCap: '2.85',
optDevelopmentFundPercentage: '0.05',
},
futureValues: [
{
Expand All @@ -104,6 +105,7 @@ export const plannedVoteResult: DsoRules_CloseVoteRequestResult = {
featuredAppRewardCap: '100.0',
unfeaturedAppRewardCap: '0.6',
optValidatorFaucetCap: '2.85',
optDevelopmentFundPercentage: '0.05',
},
},
{
Expand All @@ -118,6 +120,7 @@ export const plannedVoteResult: DsoRules_CloseVoteRequestResult = {
featuredAppRewardCap: '100.0',
unfeaturedAppRewardCap: '0.6',
optValidatorFaucetCap: '2.85',
optDevelopmentFundPercentage: '0.05',
},
},
{
Expand All @@ -132,6 +135,7 @@ export const plannedVoteResult: DsoRules_CloseVoteRequestResult = {
featuredAppRewardCap: '100.0',
unfeaturedAppRewardCap: '0.6',
optValidatorFaucetCap: '2.85',
optDevelopmentFundPercentage: '0.05',
},
},
{
Expand All @@ -146,6 +150,7 @@ export const plannedVoteResult: DsoRules_CloseVoteRequestResult = {
featuredAppRewardCap: '100.0',
unfeaturedAppRewardCap: '0.6',
optValidatorFaucetCap: '2.85',
optDevelopmentFundPercentage: '0.05',
},
},
],
Expand Down Expand Up @@ -186,6 +191,7 @@ export const plannedVoteResult: DsoRules_CloseVoteRequestResult = {
},
transferPreapprovalFee: null,
featuredAppActivityMarkerAmount: null,
optDevelopmentFundManager: null,
},
},
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ object DarResources {
val amulet_0_1_12 = DarResource("splice-amulet-0.1.12.dar")
val amulet_0_1_13 = DarResource("splice-amulet-0.1.13.dar")
val amulet_0_1_14 = DarResource("splice-amulet-0.1.14.dar")
val amulet_0_1_15 = DarResource("splice-amulet-0.1.15.dar")
val amulet_current = DarResource("splice-amulet-current.dar")
val amulet = PackageResource(
amulet_current,
Expand All @@ -95,6 +96,7 @@ object DarResources {
amulet_0_1_12,
amulet_0_1_13,
amulet_0_1_14,
amulet_0_1_15,
),
)

Expand All @@ -119,6 +121,7 @@ object DarResources {
val dsoGovernance_0_1_18 = DarResource("splice-dso-governance-0.1.18.dar")
val dsoGovernance_0_1_19 = DarResource("splice-dso-governance-0.1.19.dar")
val dsoGovernance_0_1_20 = DarResource("splice-dso-governance-0.1.20.dar")
val dsoGovernance_0_1_21 = DarResource("splice-dso-governance-0.1.21.dar")
val dsoGovernance_current = DarResource("splice-dso-governance-current.dar")
val dsoGovernance = PackageResource(
dsoGovernance_current,
Expand All @@ -145,6 +148,7 @@ object DarResources {
dsoGovernance_0_1_18,
dsoGovernance_0_1_19,
dsoGovernance_0_1_20,
dsoGovernance_0_1_21,
),
)

Expand All @@ -164,6 +168,7 @@ object DarResources {
val amuletNameService_0_1_13 = DarResource("splice-amulet-name-service-0.1.13.dar")
val amuletNameService_0_1_14 = DarResource("splice-amulet-name-service-0.1.14.dar")
val amuletNameService_0_1_15 = DarResource("splice-amulet-name-service-0.1.15.dar")
val amuletNameService_0_1_16 = DarResource("splice-amulet-name-service-0.1.16.dar")
val amuletNameService_current = DarResource("splice-amulet-name-service-current.dar")
val amuletNameService = PackageResource(
amuletNameService_current,
Expand All @@ -185,6 +190,7 @@ object DarResources {
amuletNameService_0_1_13,
amuletNameService_0_1_14,
amuletNameService_0_1_15,
amuletNameService_0_1_16,
),
)

Expand All @@ -203,6 +209,7 @@ object DarResources {
val splitwell_0_1_12 = DarResource("splitwell-0.1.12.dar")
val splitwell_0_1_13 = DarResource("splitwell-0.1.13.dar")
val splitwell_0_1_14 = DarResource("splitwell-0.1.14.dar")
val splitwell_0_1_15 = DarResource("splitwell-0.1.15.dar")
val splitwell_current = DarResource("splitwell-current.dar")
val splitwell = PackageResource(
splitwell_current,
Expand All @@ -223,6 +230,7 @@ object DarResources {
splitwell_0_1_12,
splitwell_0_1_13,
splitwell_0_1_14,
splitwell_0_1_15,
),
)

Expand All @@ -241,6 +249,7 @@ object DarResources {
val wallet_0_1_12 = DarResource("splice-wallet-0.1.12.dar")
val wallet_0_1_13 = DarResource("splice-wallet-0.1.13.dar")
val wallet_0_1_14 = DarResource("splice-wallet-0.1.14.dar")
val wallet_0_1_15 = DarResource("splice-wallet-0.1.15.dar")
val wallet_current = DarResource("splice-wallet-current.dar")
val wallet = PackageResource(
wallet_current,
Expand All @@ -261,6 +270,7 @@ object DarResources {
wallet_0_1_12,
wallet_0_1_13,
wallet_0_1_14,
wallet_0_1_15,
),
)

Expand All @@ -279,6 +289,7 @@ object DarResources {
val walletPayments_0_1_12 = DarResource("splice-wallet-payments-0.1.12.dar")
val walletPayments_0_1_13 = DarResource("splice-wallet-payments-0.1.13.dar")
val walletPayments_0_1_14 = DarResource("splice-wallet-payments-0.1.14.dar")
val walletPayments_0_1_15 = DarResource("splice-wallet-payments-0.1.15.dar")
val walletPayments_current = DarResource("splice-wallet-payments-current.dar")
val walletPayments = PackageResource(
walletPayments_current,
Expand All @@ -299,6 +310,7 @@ object DarResources {
walletPayments_0_1_12,
walletPayments_0_1_13,
walletPayments_0_1_14,
walletPayments_0_1_15,
),
)

Expand All @@ -308,6 +320,7 @@ object DarResources {
val validatorLifecycle_0_1_3 = DarResource("splice-validator-lifecycle-0.1.3.dar")
val validatorLifecycle_0_1_4 = DarResource("splice-validator-lifecycle-0.1.4.dar")
val validatorLifecycle_0_1_5 = DarResource("splice-validator-lifecycle-0.1.5.dar")
val validatorLifecycle_0_1_6 = DarResource("splice-validator-lifecycle-0.1.6.dar")
val validatorLifecycle_current = DarResource("splice-validator-lifecycle-current.dar")
val validatorLifecycle = PackageResource(
validatorLifecycle_current,
Expand All @@ -319,6 +332,7 @@ object DarResources {
validatorLifecycle_0_1_3,
validatorLifecycle_0_1_4,
validatorLifecycle_0_1_5,
validatorLifecycle_0_1_6,
),
)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -223,6 +223,9 @@ object SpliceUtil {

// validatorFaucetCap
Some(damlDecimal(2.85)).toJava,

// developmentFundPercentage
Optional.empty(),
)

private def hours(h: Long): RelTime = new RelTime(TimeUnit.HOURS.toMicros(h))
Expand Down Expand Up @@ -389,6 +392,7 @@ object SpliceUtil {
initialPackageConfig,
transferPreapprovalFee.map(_.bigDecimal).toJava,
featuredAppActivityMarkerAmount.map(_.bigDecimal).toJava,
Optional.empty(),
)

def defaultAnsConfig(
Expand Down
Loading
Loading