Objective
The vesting dApp stops vesting Canton Coin and starts vesting a canton-token-forge instrument, dropping the Daml toolchain requirement with it.
Rationale
Canton Coin ties every write to Splice reference data: AmuletRules, an open mining round and a wallet-service tap. A token-forge instrument replaces all of it with one InstrumentConfig from a CIP-56 registry, cuts grant creation from two wallet approvals to one, and lets the repository run without dpm.
Scope
In scope:
- Vendor the
vesting and canton-token-forge DARs as binaries, delete dapp/daml/
- Run the canton-token-forge registry on 3013 and seed a
DBT instrument
- Rewrite
LedgerBackend, commands.ts and config.ts behind an unchanged VestingBackend
- Add an in-app faucet over
InstrumentConfig_Tap
Out of scope:
- More than one instrument, or an instrument picker in the UI
- Hosting a registry for
demo.canton-dappbooster
- Moving off
@bootnodedev/canton-barebones
Architecture & technical considerations
Design doc: docs/superpowers/specs/2026-09-02-token-forge-vesting-design.md. VestingBackend is the seam that makes this survivable: the UI, the schedule editor and the domain types are untouched. Token-forge only, no second backend alongside Amulet.
Dependencies
canton-token-forge v0.2.0 (registry npm package and DAR) and canton-vesting-forge v0.1.0 (DAR). Both released.
Issue breakdown
Acceptance criteria
Additional context
#134 asks for a Canton Coin faucet. This epic supersedes the asset it names: the faucet lands as an in-app InstrumentConfig_Tap over DBT, in #155.
Objective
The vesting dApp stops vesting Canton Coin and starts vesting a canton-token-forge instrument, dropping the Daml toolchain requirement with it.
Rationale
Canton Coin ties every write to Splice reference data:
AmuletRules, an open mining round and a wallet-service tap. A token-forge instrument replaces all of it with oneInstrumentConfigfrom a CIP-56 registry, cuts grant creation from two wallet approvals to one, and lets the repository run withoutdpm.Scope
In scope:
vestingandcanton-token-forgeDARs as binaries, deletedapp/daml/DBTinstrumentLedgerBackend,commands.tsandconfig.tsbehind an unchangedVestingBackendInstrumentConfig_TapOut of scope:
demo.canton-dappbooster@bootnodedev/canton-barebonesArchitecture & technical considerations
Design doc:
docs/superpowers/specs/2026-09-02-token-forge-vesting-design.md.VestingBackendis the seam that makes this survivable: the UI, the schedule editor and the domain types are untouched. Token-forge only, no second backend alongside Amulet.Dependencies
canton-token-forge
v0.2.0(registry npm package and DAR) and canton-vesting-forgev0.1.0(DAR). Both released.Issue breakdown
Acceptance criteria
DBTend to enddpmis not required to run the repositoryAmuletRulesor mining round reaches a writeAdditional context
#134 asks for a Canton Coin faucet. This epic supersedes the asset it names: the faucet lands as an in-app
InstrumentConfig_TapoverDBT, in #155.