Hi everyone,
as we explained a few days ago here, a ckBTC → BTC transaction is currently stuck. The reason is that the ckBTC minter batched together several fairly large withdrawal requests, which required the ckBTC minter to use many inputs to build the transaction, pushing its size over the limit for a standard Bitcoin transaction. As a result, the nodes in the Bitcoin network (probably) dropped the transaction and it never got confirmed.
This NNS proposal upgraded the ckBTC minter to prevent the signing and transmission of such non-standard transactions. Naturally, this upgrade does not solve the problem of the stuck transaction. Another NNS proposal was submitted a few minutes ago to address this problem. Concretely, the code changes introduce the following mechanism: If a transaction exceeds the maximum size of a standard transaction, a cancellation transaction is submitted that consumes only one input of the stuck transaction, sending the funds back to the ckBTC minter. Once this transaction is confirmed, it is no longer possible for the non-standard transaction to be confirmed, i.e., this transaction effectively cancels the stuck transaction. Note that this step is required because a transaction may be mined into a block at any time even if it is non-standard. Once the cancellation transaction is confirmed, the ckBTC minter reimburses the users whose requests got canceled by instructing the ckBTC ledger to remint the burned ckBTC into their accounts. If this step is successful, the users are then free to issue another retrieval request if they wish to do so.
The proposed upgrade does not prevent future withdrawals from requiring so many UTXOs that the transaction becomes too large and needs to be canceled and reimbursed. To avoid this scenario altogether, the ckBTC minter likely needs to be extended to periodically consolidate UTXOs. This is something we are considering and will require a future upgrade to the ckBTC minter.
Please take a look at the new proposal and let us know if you have any questions!