feat: add MFA/TOTP auth, PII encryption, agents/leads/inquiries modules, and comprehensive tests

- Add TOTP-based MFA with setup, verify, disable, backup codes, and challenge flow
- Add PII field encryption middleware with AES-256-GCM and deterministic search hashes
- Add agents, inquiries, and leads domain modules with entities, events, value objects
- Add web dashboard pages for inquiries and leads with detail dialogs
- Add 30+ component tests (valuation, charts, listings, search, providers, UI)
- Add Prisma migrations for encryption hash columns and MFA TOTP support
- Fix all ESLint errors (unused imports, duplicate imports, lint auto-fixes)
- Update dependencies and lock file
- Clean up obsolete exploration/QA docs, add audit documentation

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
Ho Ngoc Hai
2026-04-11 23:43:20 +07:00
parent 9e2bf9a4b5
commit 1fbe2f4e73
131 changed files with 11436 additions and 2595 deletions

View File

@@ -29,12 +29,13 @@
"format": "prettier --write .",
"format:check": "prettier --check .",
"dep-cruise": "depcruise src/ apps/ --config .dependency-cruiser.cjs",
"db:generate": "prisma generate",
"db:migrate:dev": "prisma migrate dev",
"db:migrate:deploy": "prisma migrate deploy",
"db:seed": "prisma db seed",
"db:studio": "prisma studio",
"db:reset": "prisma migrate reset",
"db:generate": "prisma generate --config prisma/prisma.config.ts",
"db:migrate:dev": "prisma migrate dev --config prisma/prisma.config.ts",
"db:migrate:deploy": "prisma migrate deploy --config prisma/prisma.config.ts",
"db:seed": "prisma db seed --config prisma/prisma.config.ts",
"db:studio": "prisma studio --config prisma/prisma.config.ts",
"db:reset": "prisma migrate reset --config prisma/prisma.config.ts",
"db:push": "prisma db push --config prisma/prisma.config.ts",
"test:e2e": "playwright test",
"test:e2e:api": "playwright test --project=api",
"test:e2e:web": "playwright test --project=web",