I really don't want it to recheck it ever 500ms and for multiple reasons:
1 - It would be pointless for people using public servers
2 - It might introduce a lot of other problems as the user gets checked on every char they type
I know the issue and have an idea how to fix it. How it works is it only rechecks again after 3 seconds if there is a span. But since the span disappears.
Once the span is gone, it goes back to doing things the old fashioned way which is comparing the result vs the cache. When the cache matches, it doesn't bother re-sending it. Which at that point you make another mistake and it doesn't show up unless you change nodes.
What I will probably do is after you manually correct, I'll have it check again in 15 seconds and 60 seconds. This should catch 99.9% of those scenarios which in itself would be pretty rare.