The ugliest DuskEVM withdrawal state I can picture is having DUSK on its way back to L1 and still being unable to finish the withdrawal.
On the current DuskEVM Testnet flow, “withdraw” is not one action. I initiate on DuskEVM, then wait until the withdrawal is Ready to prove, submit a proof on Dusk L1, wait again, and only then send the finalization transaction that releases the funds.
What caught me is where the fee burden sits. The returning DUSK does not pay its own way home. I need enough unshielded DUSK already sitting on L1 to pay for both the proof and finalization transactions.
And I cannot safely turn the waiting period into a timer. Readiness depends on published network state, proof maturity, and dispute checks, so the wallet status decides when I can move, not “it has been long enough.”
That creates a very specific failure for me: I can start with enough DUSK to withdraw, do everything correctly, then stall one step from release because I left no usable L1 balance for the last two transactions.
For this flow, I would fund the exit path before I enter it.
#dusk $DUSK @Dusk
On the current DuskEVM Testnet flow, “withdraw” is not one action. I initiate on DuskEVM, then wait until the withdrawal is Ready to prove, submit a proof on Dusk L1, wait again, and only then send the finalization transaction that releases the funds.
What caught me is where the fee burden sits. The returning DUSK does not pay its own way home. I need enough unshielded DUSK already sitting on L1 to pay for both the proof and finalization transactions.
And I cannot safely turn the waiting period into a timer. Readiness depends on published network state, proof maturity, and dispute checks, so the wallet status decides when I can move, not “it has been long enough.”
That creates a very specific failure for me: I can start with enough DUSK to withdraw, do everything correctly, then stall one step from release because I left no usable L1 balance for the last two transactions.
For this flow, I would fund the exit path before I enter it.
#dusk $DUSK @Dusk