The main reason that this is a challenge is because all of this lies on Stripe's infrastructure, not on any line of code written by Kagi. They are making the rules in terms of what credit can and can't be used for and under what circumstances - almost nothing related to subscription handling is done on our end. We totally offload that to Stripe.
We have tried to work on Stripe on this to fix it. However, we have basically been told that we need to work around it on our end, effectively re-implementing a bunch of stripes logic and accounting ourselves - taking on all the potential liability for bugs and other issues that may arise because of that just to solve these corner cases.
It is only until very recently that we have been able to afford to staff a dedicated team to give bandwidth to these types of issues in our infrastructure. For all these years, we've effectively only been able to have a single developer who owns all of our Stripe integration end to end, so making such large changes like this theoretically requires were just not practical from a risk point of view.
We appreciate that it's very frustrating; we are frustrated too, and if it would have been easier for us to take things into our own hands by now, we absolutely would have.
We are currently rounding the bend with getting all of our new billing infrastructure into production with our new team and hopefully that will better position us to directly tackle these kinds of nasty issues head on.
I know that these excuses don't fix anything, but I'm still hopeful that this transparency is still valuable. Thanks for understanding.