Proposal: Canton Multi-Party Workflow Choreography Reference Implementation
CLOSEDPull Request
2M CC requested
Development Fund Proposal Submission
Proposal file: /proposals/canton-multiparty-workflow-choreography.md
---
Summary
Canton Multi-Party Workflow Choreography (CMWC) delivers a reusable, Canton-native reference implementation for coordinating workflows across parties who cannot see each other's state. The project ships four Daml choreography primitives (WorkflowHandoff, LocalAttestation, AwaitingStep, WorkflowTerminal), a per-participant TypeScript workflow runner, a fully worked four-party equity settlement reference scenario, and a choreography design guide — across 4 milestones requesting 2,000,000 CC in milestone-based funding.
---
Checklist
- [x] Proposal file added under
/proposals/ - [x] Milestones and funding amounts defined
- [x] Acceptance criteria included
- [x] Alignment with Canton priorities described
---
Notes for Reviewers
- This proposal addresses the coordination problem created by Canton's own privacy model: when parties cannot see each other's state, how does a multi-party workflow advance correctly? This problem does not exist on public chains and cannot be solved by importing patterns from other ecosystems.
- The reference scenario — four-party equity settlement with CCP novation — is chosen because it contains every choreography design pattern (party-set transitions, off-contract attestations, parallel instruction issuance, terminal-state finality) in a single commercially recognizable workflow.
- The
WorkflowHandoffprimitive enforces at the Daml model level that no prior-step party appears on a new-step contract unless explicitly listed — the most common correctness failure in Canton multi-party workflows today. - This proposal is a natural complement to CCDM (PR #117): CCDM handles cross-synchronizer messaging; this proposal handles cross-privacy-domain choreography within a single synchronizer.