Treat TOTP and Passkey as alternative enrolled factors across login and sensitive account operations. Gate every primary login transport before issuing a session, require WebAuthn user verification, and consume login challenges atomically with session creation. Reuse the shared verification UI for login, 2FA management, and account deletion. Require scoped, single-use deletion proof; recheck the session inside the deletion transaction and revoke all sessions afterward. Validation: controller/service/model/middleware tests; real SQLite 3.50.4, MySQL 8.4.11, and PostgreSQL 16.15 security regressions; frontend tests, TypeScript, targeted lint, formatting, and production build. Deploy the frontend and all backend nodes together. No schema changes.
| Name |
Last commit
|
Last Update |
|---|---|---|
| .. | ||
| public | Loading commit data... | |
| scripts | Loading commit data... | |
| src | Loading commit data... | |
| .gitignore | Loading commit data... | |
| .node-version | Loading commit data... | |
| .npmrc | Loading commit data... | |
| .oxfmtrc.json | Loading commit data... | |
| .oxlintrc.json | Loading commit data... | |
| AGENTS.md | Loading commit data... | |
| bun.lock | Loading commit data... | |
| components.json | Loading commit data... | |
| cz.yaml | Loading commit data... | |
| index.html | Loading commit data... | |
| knip.config.ts | Loading commit data... | |
| netlify.toml | Loading commit data... | |
| package.json | Loading commit data... | |
| rsbuild.config.ts | Loading commit data... | |
| tsconfig.app.json | Loading commit data... | |
| tsconfig.json | Loading commit data... | |
| tsconfig.node.json | Loading commit data... | |
| vitest.config.ts | Loading commit data... |