Interesting, because I brought this exact thing up last time Kagi was mentioned here, and the founder and billing engineer assured me that it does NOT convert to a subscription:
As I mentioned in my previous comment, it does not convert IF you do not have a payment method set.
In this instance they already had one set which Stripe takes as 'this user wants to renew' and instead decides to not cancel it.
I did mention a workaround we could do, and that's something that we will ensure gets done asap.
https://news.ycombinator.com/item?id=43308930