Files
mercadodevida/work/artifacts/CLUB-004/implementer.md

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`