100% FUD.
the client could simply ignore it. All prior tokens would
still be valid.
No they are not.
Also the same applies to sessions, sessions should be refreshed, too. To clean up, your application may null out the session
or remove the persisted value from the data store. The
result is the same; no more session.
The same with JWT. The data is cryptographically signed with a Hash-based Message
Authentication Code (HMAC)
Not always correct. When you deploy an update to the application and want to invalidate
current sessions? When you’re updating sessions as data changes?
When you’re storing sessions?
The same way you would do with a session. You wouldn't clean your datastore you would change your secret.