b7807e41e0
When npm run create-user is invoked from Windows Git Bash with single-quoted values (--password 'foo' --name 'Berwn'), the quotes survive into process.argv and end up stored in the DB. Login fails silently because the stored hash is for 'foo' but the user types foo. create-user and diag-user now strip a single set of matching surrounding quotes from every --flag value. Real values that need literal leading and trailing quotes can be escaped. diag-user prints the full user row (email, normalized email, hash prefix, isActive, memberships, session count) and optionally verifies a password. Useful whenever a login mystery shows up. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>