SuperAPI AI 工具集

canton-network-repos

编程与开发

查看项目

更新于 10-16 06:50

技能介绍

用途:处理 Canton Network、DAML 或 Splice 仓库相关工作,排查版本兼容问题,理解企业版与社区版差异,调试 LF 版本或包 ID 不匹配,以及从源码构建 Canton participant 或 Splice 应用。

主要能力:说明仓库层级(Splice 依赖 Canton,Canton 依赖 DAML SDK)与各仓库关键目录;给出 Splice、Canton、DAML SDK 与协议、LF 默认版本的映射表;解释包 ID 由源码内容、--target 指定的 LF 版本、SDK/stdlib 版本和依赖包 ID 共同决定,因此改 LF 版本会改变包 ID 并导致不兼容;列出 Canton 对包升级的校验规则;覆盖企业版与社区版在入口类、交易处理、裁剪、数据库和 HA 域上的差异。

使用方式(命令保持原样):构建社区 Canton participant 用 cd canton 后执行 sbt "community/app/assembly",输出 community/app/target/scala-2.13/canton-community.jar;构建 Splice 应用在 decentralized-canton-sync 下执行 sbt compile(需 DAML_COMPILER_VERSION 环境变量)。切换到 LF 2.2 需将 project/CantonDependencies.scala 中 daml_language_versions 改为 Seq("2.2"),更新 nix/daml-compiler-sources.json 版本,并把各 daml/*/daml.yaml 的 sdk-version 设为 3.4.9、build-options 加 --target=2.2,同时移除 SDK 3.4.9 中不存在的 -Wno-ledger-time-is-alpha 警告标志,然后用 nix-shell -p daml-sdk --run "daml build -p daml/splice-util" 等命令构建。

适用场景与限制:适合版本排查、升级验证和开源构建。LF 2.2 需 SDK 3.4.9,公开 Splice 0.5.4 自带较旧 SDK 快照,故默认仍为 LF 2.1;Canton 管理类 DAR 等需另行确认。其他未提供信息暂未提供。