ts-auth gains a Postgres service and migrations. The security regressions
this branch adds - wrong password, pass-the-hash, wrong TOTP code, lockout,
single-use recovery codes - are all decided in the database, so without one
they skip silently and CI would go green on an unauthenticated server.
webmail-build only ran "npm run build", so i18n.test.ts never executed
anywhere. It now lints and tests too, and the package gained the lint
script it was missing.
*.tsbuildinfo is ignored: tsc --noEmit leaves it behind and it is a local
build cache, not source.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>