Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use when working with Canton Network participants, DAML smart contracts, Splice applications, or debugging LF version and package ID issues.
.claude/skills/aiskillstore-canton-network-repos/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 66% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 18% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 39% | 0% |
| case-07 | ✗→✓ | ▲ Improved | -7% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 25% | 0% |
Splice (e.g., 0.5.4) github.com/digital-asset/decentralized-canton-sync
└─ depends on
Canton (e.g., 3.4.9) github.com/digital-asset/canton
└─ depends on
DAML SDK (e.g., 3.4.9) github.com/digital-asset/daml| Splice | Canton | DAML SDK | Protocol | LF Default | LF Available | |--------|--------|----------|----------|------------|--------------| | 0.5.4 | 3.4.9 | 3.4.9 | PV34 | 2.1 | 2.2 (verified) | | 0.5.3 | 3.4.8 | 3.4.8 | PV34 | 2.1 | 2.2 | | 0.4.x | 3.3.x | 3.3.x | PV33 | 2.1 | 2.1 |
Open-source Splice 0.5.4 ships with SDK snapshot 3.3.0-snapshot.20250502 (pre-dates LF 2.2). LF 2.2 was added to the SDK on 2025-10-03. Updating to SDK 3.4.9 enables LF 2.2 builds.
| Purpose | Repo | File | |---------|------|------| | LF version definitions | daml | sdk/daml-lf/language/.../LanguageVersion.scala | | damlc target validation | daml | sdk/compiler/damlc/lib/DA/Cli/Options.hs | | Canton version | canton | VERSION | | Built-in DARs | canton | community/common/src/main/daml/ | | Splice LF config | splice | project/CantonDependencies.scala | | Package targets | splice | daml/*/daml.yaml | | Docker builds | splice | cluster/images/*/Dockerfile |
Splice LF config (project/CantonDependencies.scala):
scalaval daml_language_versions = Seq("2.1") // ← LF target; change to "2.2" for upgrade val daml_compiler_version = sys.env("DAML_COMPILER_VERSION")
Package IDs are cryptographic hashes of: source content + LF version (--target) + SDK/stdlib version + dependency package IDs.
Changing LF version = different package IDs = incompatible packages. Canton validates that upgraded packages use equal or newer LF version; mixing LF versions on the same ledger causes validation failures.
| Feature | Enterprise | Community | |---------|------------|-----------| | Transaction processing | Parallel | Sequential | | Database | PostgreSQL, Oracle | PostgreSQL only | | HA Domain | Supported | Embedded only | | Pruning | Full | Limited |
bash# Community Canton participant cd canton && sbt "community/app/assembly" # Output: community/app/target/scala-2.13/canton-community.jar # Splice applications (requires DAML_COMPILER_VERSION env var) cd decentralized-canton-sync && sbt compile
project/CantonDependencies.scala: val daml_language_versions = Seq("2.2")nix/daml-compiler-sources.json: { "version": "3.4.9" }daml/*/daml.yaml: set sdk-version: 3.4.9 and --target=2.2-Wno-ledger-time-is-alpha from all daml.yaml files (not in SDK 3.4.9)daml build -p daml/splice-util && daml build -p daml/splice-amuletCommunity-built DARs have identical package IDs to enterprise at the same LF version (verified 2025-12-24).
"Unknown Daml-LF version: 2.2": damlc binary doesn't support 2.2. Check daml damlc --help for supported targets; upgrade to SDK 3.4.9.
Package ID mismatch: different --target values between builds. Check: unzip -p package.dar META-INF/MANIFEST.MF | grep Sdk-Version
Upgrade validation failed: swapping enterprise (LF 2.2) with community (LF 2.1) packages. Use DAR injection to maintain LF 2.2 compatibility.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 56,418 | 9,263 | -84% | 1 | 1 | 0% | 1,896 | 3,138 | +66% | 0 | 0 | — |
case-02 | fail→pass | 15,116 | 8,621 | -43% | 1 | 1 | 0% | 2,298 | 2,711 | +18% | 0 | 0 | — |
case-03 | fail→pass | 17,249 | 14,456 | -16% | 1 | 1 | 0% | 2,763 | 3,848 | +39% | 0 | 0 | — |
case-04 | pass→pass | 10,374 | 8,517 | -18% | 1 | 1 | 0% | 1,880 | 2,707 | +44% | 0 | 0 | — |
case-05 | pass→pass | 17,175 | 15,800 | -8% | 1 | 1 | 0% | 2,652 | 3,805 | +43% | 0 | 0 | — |
case-06 | pass→pass | 20,460 | 20,085 | -2% | 1 | 1 | 0% | 4,148 | 5,349 | +29% | 0 | 0 | — |
case-07 | fail→pass | 11,035 | 3,491 | -68% | 1 | 1 | 0% | 2,032 | 1,889 | -7% | 0 | 0 | — |
case-08 | fail→pass | 7,625 | 2,866 | -62% | 1 | 1 | 0% | 1,375 | 1,714 | +25% | 0 | 0 | — |
case-09 | fail→pass | 14,350 | 1,946 | -86% | 1 | 1 | 0% | 2,457 | 1,576 | -36% | 0 | 0 | — |
case-10 | fail→pass | 9,489 | 3,960 | -58% | 1 | 1 | 0% | 1,678 | 1,885 | +12% | 0 | 0 | — |
case-11 | fail→pass | 11,799 | 3,713 | -69% | 1 | 1 | 0% | 2,098 | 1,719 | -18% | 0 | 0 | — |
case-12 | fail→pass | 12,169 | 1,967 | -84% | 1 | 1 | 0% | 2,029 | 1,533 | -24% | 0 | 0 | — |
case-13 | fail→pass | 10,169 | 2,358 | -77% | 1 | 1 | 0% | 1,759 | 1,652 | -6% | 0 | 0 | — |
case-14 | fail→pass | 7,507 | 1,753 | -77% | 1 | 1 | 0% | 1,136 | 1,494 | +32% | 0 | 0 | — |
case-15 | pass→pass | 15,339 | 9,286 | -39% | 1 | 1 | 0% | 2,356 | 2,628 | +12% | 0 | 0 | — |
case-16 | fail→pass | 14,032 | 9,153 | -35% | 1 | 1 | 0% | 2,021 | 2,900 | +43% | 0 | 0 | — |
case-17 | pass→pass | 16,093 | 5,577 | -65% | 1 | 1 | 0% | 1,782 | 2,178 | +22% | 0 | 0 | — |
case-18 | fail→pass | 15,314 | 2,487 | -84% | 1 | 1 | 0% | 2,098 | 1,667 | -21% | 0 | 0 | — |
case-19 | pass→pass | 13,968 | 3,590 | -74% | 1 | 1 | 0% | 2,017 | 1,752 | -13% | 0 | 0 | — |
case-20 | pass→pass | 15,736 | 7,278 | -54% | 1 | 1 | 0% | 2,378 | 2,345 | -1% | 0 | 0 | — |
case-21 | pass→pass | 9,218 | 4,930 | -47% | 1 | 1 | 0% | 1,530 | 2,125 | +39% | 0 | 0 | — |
case-22 | fail→pass | 12,801 | 9,140 | -29% | 1 | 1 | 0% | 1,820 | 2,884 | +58% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +64 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.