21 lines
1.1 KiB
Markdown
21 lines
1.1 KiB
Markdown
# Implementer — CLUB-004
|
|
|
|
## Resumen
|
|
Implementados códigos de recuperación del Club: generación, listado y recuperación con nuevo dispositivo.
|
|
|
|
## Archivos modificados/creados
|
|
- `src/modules/club/domain/club.ts` — tipos `ClubRecoveryCode`, `GenerateRecoveryCodesResult`, `RecoverByCodeResult`
|
|
- `src/modules/club/domain/errors.ts` — `ClubRecoveryCodeInvalidError`, `ClubRecoveryCodesDisabledError`
|
|
- `src/modules/club/domain/ports.ts` — порты: `generateRecoveryCodes`, `listActiveRecoveryCodes`, `consumeRecoveryCode`
|
|
- `src/modules/club/infrastructure/pg-club-repository.ts` — implementación + `generateRecoveryCode()` helper
|
|
- `src/modules/club/application/club-service.ts` — `generateRecoveryCodes()`, `listRecoveryCodes()`, `recoverByCode()`
|
|
- `src/modules/club/api/club.routes.ts` — 3 endpoints nuevos + mapeo de errores
|
|
- `migrations/067_club_recovery_code_index.js` — índice en `code_fingerprint`
|
|
|
|
## Validación
|
|
- `cd project && npm run typecheck` ✅
|
|
- `cd project && npm run build` ✅
|
|
- `npx vitest run src/modules/club/tests/` ✅ (4 tests pass)
|
|
- `git diff --check` ✅
|
|
- `./scripts/verify.sh` ✅
|