Proposal: Versioned Debug Info Metadata for Daml
Walnut proposes a debug metadata format for Daml, compiler support to emit it, a runtime trace, a verifier and reader library, source-level debugging in dpm trace and dpm debug, an adoption milestone, and a 12-month maintenance window.
The draft format specification and its JSON Schema live alongside the prototype compiler.
Development Fund Proposal Submission
Proposal file:
/proposals/2026-08-Walnut-daml-debug-info-metadata.md
Applicant
Organization:
Walnut
Author / Primary Contact:
Djordje Todorovic (djordje@walnut.dev)
Roman Mazur (roman@walnut.dev)
Champion:
Curtis Hrischuk, Digital Asset (curtis.hrischuk@digitalasset.com)
Proposal Classification
Proposal Type:
- RFP-aligned proposal
- Individual initiative
RFP / Roadmap Area:
The RFP is #19.
Label:
daml-tooling
Funding & Timeline
Total Funding Request:
3,360,000 CC
Project Duration:
18 months (6 months delivery, followed by a 12-month adoption and maintenance window)
Maximum Amount:
N/A
Maximum Duration:
N/A
Summary
When a Daml workflow fails on Canton, the developer sees an error message and a package id, not the line of Daml that failed. We will define a debug metadata format for Daml, make the compiler emit it, and build the tooling that reads it, including dpm debug, a source-level debugger. Putting that mapping in the compiler once means every Canton tool gets the same answer instead of each one guessing at it separately.
Submission Checklist
- Full proposal file is included in this PR
- Organization and primary contact identified
- Champion identified or
Needs Championselected - RFP / roadmap alignment identified, if applicable
- Total funding request provided
- Project duration provided
- Proposal is within any RFP maximum amount
- Proposal is within any RFP maximum duration
- Milestones and milestone funding are defined in the proposal
- Acceptance criteria are based on ecosystem value
- Architectural alignment is addressed