Release Notes - v0.204.0
v0.204.0
Section titled “v0.204.0”Title: Make DRep deposit validation fail closed
Version: v0.204.0
This release makes DRep deposit handling safer: deregistration now fails closed when the recorded deposit is absent, refunds compare against recorded deposits when available, in-transaction registrations distinguish complete credentials, and delegation validation reports lookup errors.
💪 Improvements
Section titled “💪 Improvements”-
Improved DRep deregistration checks: The ledger rejects deregistration when the registered DRep has no recorded deposit and returns
DRepDepositStateInconsistentError, preventing a refund without deposit state. -
Applied recorded deposits to refunds: Refund comparisons use the recorded amount whenever a DRep deposit exists.
-
Distinguished complete in-transaction DRep credentials: Lookups use the credential type and 28-byte hash, so key and script credentials with matching hashes remain separate.
-
Propagated DRep lookup errors during delegation validation: Callers now receive lookup errors instead of unregistered DRep results.
-
Added deposit edge case coverage: Automated tests verify fail closed behavior when a deposit is absent and refunds based on recorded deposits.
⚠️ Breaking changes and migration
Section titled “⚠️ Breaking changes and migration”- Changed DRep registration construction:
DRepRegistration.Depositaccepts a pointer to the deposit. Implementations that construct DRep registrations must provide a pointer when a recorded deposit exists andnilwhen the deposit is absent.
Recommended Network Compatibility ⚠️
Section titled “Recommended Network Compatibility ⚠️”| Network | Compatible |
|---|---|
| mainnet | ⛔ |
| preprod-testnet | ✅ |
| preview-testnet | ✅ |
| musashi | ✅ |
Release: v0.204.0
Compare: v0.203.0…v0.204.0
Docs authored by Doc Holiday