Skip to content

Proposal: Add Modular Canton Topology Composer

OPENPull Request
by pmensik16-03-2026Needs Champion
140K CC requested
node-deployment-operations

Draft Proposal: Modular Local Canton Topology Composer

Summary

This PR submits a Canton Development Fund proposal for the Modular Local Canton Topology Composer (canton-compose).

It proposes building a standalone CLI tool that generates runnable, local Canton environments based on a set of curated topology profiles. The tool outputs plain Docker Compose and Canton HOCON bootstrap configurations.

Motivation

Currently, Canton's local tooling (cn-quickstart / LocalNet) ships an excellent but fixed, opinionated topology (a multiplexed single container). Developers who need to test advanced deployment shapes—such as multi-synchronizer contract transfers, sequencer high-availability, or synchronizer-scoped isolation—must hand-write complex HOCON configurations, wire up compose services, and orchestrate bootstrap scripts from scratch. This is an error-prone, undocumented hurdle for advanced application and infrastructure development.

Proposed Solution

canton-compose deterministically generates configurations for 5 specific, tested profiles:

  1. minimal
  2. two-party
  3. topology-lab (2 participants, 2 independent synchronizers, full mesh)
  4. ha-sequencer (1 synchronizer served by 2 sequencer nodes)
  5. partitioned (isolated synchronizers with zero overlap)

Non-Goals for the initial funding

  • Not a lifecycle manager: It does not wrap up/down commands. It just generates the configurations for developers to run via standard docker compose.
  • Not a Quickstart replacement: This serves teams testing advanced architectural topologies, not initial onboarding.
  • Not a generic wrapper: It embeds Canton-specific domain knowledge to auto-generate valid multi-node .conf settings.

Funding & Timeline

  • Total Ask: 140,000 CC
  • Timeline: ~13 weeks across 4 Milestones
  • Long-term Value: Milestone 4 includes a funded 12-month maintenance SLA to guarantee generator compatibility with new minor/patch Canton releases, addressing the risk of schema drift.

Reviewer Note

The proposal restricts its scope to generation, keeping it distinct from other proposals that are about the management of the LocalNet. The code extraction and YAML generation guarantees are outlined in the specification section.