-
Notifications
You must be signed in to change notification settings - Fork 37
Open
Description
I noticed that at least one production implementation of ICRC-1 ledger (link) ignores the deduplication part of the spec; it only records the created_at_time field in a block.
We should specify how a ledger opts out of the deduplication mechanism. I see at least three options:
- Always return
TooOldorCreatedInFutureif the caller specifiedcreated_at_time(effectively settingTX_WINDOWandPERMITTED_DRIFTto zero). - Reject the call (e.g.,
trap) if the caller specifiedcreated_at_time. - Introduce our first generic error
{ error_code = 1; message = "ICRC-1: deduplication not supported"}.
I prefer the last option with the generic error because it’s the most explicit one. On the other hand, the test suite expects the first option:
Line 723 in af20f05
| Err(TransferError::TooOld) => { |
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels