Overview
The ICP ledger currently restricts the anonymous principal from performing transactions. In the upcoming ICP ledger suite release, DFINITY proposes removing these restrictions to allow the anonymous principal to execute transactions. As the anonymous principal’s default account currently holds a small amount of funds, we also propose burning these funds in the post_upgrade method when installing the ledger upgrade.
Rationale
Enabling anonymous principal transactions will significantly improve the development experience by facilitating testing workflows. For example, developers working in local development and testing environments will be able to set large initial balances for accounts belonging to the anonymous principal and subsequently transfer tokens to other accounts for testing purposes.
Additionally, removing these restrictions aligns the ICP ledger implementation more closely with the ICRC ledger implementation, promoting consistency across the ecosystem.
Implementation Plan
The implementation involves merging two pull requests and creating a new ledger suite release:
- PR 5473: Remove restrictions from the anonymous principal, enabling it to perform transfers and create allowances on the ICP ledger.
- PR 5496: Burn the funds in the default subaccount of the anonymous principal during the ICP ledger post-upgrade process.
Timeline
- Merge PRs and create GitHub ledger suite release: By Thursday, August 14th
- Create upgrade proposals: By Friday, August 15th
- Proposal approval and upgrade execution: Week of August 18th
Community Feedback
We welcome community input on this proposed action plan. Please share your thoughts, questions, or concerns in the discussion below!
