Enum RefundBlockedReason
- Namespace
- NArk.ArkadeIntents.Recovery
- Assembly
- NArk.ArkadeIntents.dll
Why a refund cannot be pushed from this wallet, as opposed to not being due yet.
public enum RefundBlockedReason
Fields
ContractMismatch = 2The contract rebuilds to a script other than the one that was funded.
The parameters and the script are stored independently, so a parameter written wrong — or dropped by a field-mapped backend — yields a contract that looks entirely valid and simply cannot sign for the money. An Arkade server key rotated since funding does the same.
ContractMissing = 1The lockup contract is not in this store, so the funded script cannot be rebuilt.
Usually a wallet restored from a seed without the contract rows that went with it. The money is untouched and the swap is not lost — it needs the store that recorded how the script was built, or a restore that rebuilds it.
NoLocktime = 3The swap carries no refund locktime, so there is no deadline to test against.
NoSigner = 0The wallet holds no signer, so nothing here can sign the refund leaf.
Remarks
The distinction matters because the two look identical to a caller and mean opposite things. "Not yet" resolves itself by waiting; these do not resolve at all until something about the wallet changes, and a loop that treats them as "not yet" retries forever while a window closes.