Client credential extraction, validation, and grant-type checks lived in a generic utils file, where the security-critical credential authority was hard to find. They now have their own client-authentication module, a sibling of the extensions surface, while utils keeps the unrelated helpers (token storage, query parsing, subject identifiers).
Pure move: no public API, behavior, or wire change. The internal verifyStoredClientSecret helper is exported from utils so the new module can reuse it.