diff --git a/CHANGELOG.md b/CHANGELOG.md index c8b8161..663cfc3 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,82 @@ O formato segue [Keep a Changelog](https://keepachangelog.com/pt-BR/). Este projeto adota [Versionamento SemĆ¢ntico](https://semver.org/pt-BR/). +## [1.59.0] - 2025-12-19 + +### Added +- šŸ”„ **Factory Reset Completo** - Sistema de exclusĆ£o permanente de conta com wizard de 4 etapas: + - **Passo 1**: Aviso detalhado sobre dados que serĆ£o deletados (irreversĆ­vel) + - **Passo 2**: Opção de criar backup completo em JSON antes de deletar + - **Passo 3**: Código de confirmação de 6 dĆ­gitos enviado por email (vĆ”lido 10min) + - **Passo 4**: Confirmação final digitando "DELETAR" em maiĆŗsculas + +- šŸ’¾ **Sistema de Backup Completo**: + - Exportação de TODOS os dados em formato JSON estruturado + - Inclui: transaƧƵes, contas, categorias, orƧamentos, objetivos, investimentos, etc + - Download disponĆ­vel por 24 horas após criação + - Arquivo pronto para importação posterior + +- šŸ“„ **Importação de Backup**: + - Interface drag & drop elegante para upload de arquivo JSON + - Mapeamento inteligente de IDs (evita conflitos) + - Importa dados SEM apagar dados existentes (aditivo) + - EstatĆ­sticas detalhadas após importação + - Validação de arquivo (tipo, tamanho mĆ”x 50MB) + +- šŸ“§ **Email de Confirmação**: + - Template HTML profissional com código de 6 dĆ­gitos + - Lista detalhada de dados que serĆ£o deletados + - Avisos visuais sobre irreversibilidade + - Recomendação de backup antes de deletar + +- šŸŽØ **Nova Seção em Profile**: + - Card "Gerenciamento de Dados" com 2 opƧƵes: + - BotĆ£o "Importar Backup" (azul, seguro) + - BotĆ£o "Factory Reset" (vermelho, perigoso) + - Aviso destacado sobre backup preventivo + +### Backend +- `AccountDeletionController` com 4 endpoints RESTful: + - `POST /api/account-deletion/request-code` - Solicita código de confirmação + - `POST /api/account-deletion/export-backup` - Exporta backup completo + - `POST /api/account-deletion/execute` - Executa hard delete com validação + - `POST /api/account-deletion/import-backup` - Importa backup JSON +- `AccountDeletionConfirmation` mail class para envio de código +- Template Blade `account-deletion-confirmation.blade.php` +- Cache Redis para código de confirmação (10min TTL) +- Transação DB para garantir atomicidade do hard delete + +### Frontend +- `FactoryResetWizard.jsx` - Wizard modal de 4 etapas +- `ImportBackupModal.jsx` - Modal de importação com drag & drop +- `accountDeletionService` - ServiƧos API completos +- Integração em `Profile.jsx` com nova seção +- Indicador visual de progresso (steps 1→2→3→4) +- Validação de código de 6 dĆ­gitos +- Validação de texto "DELETAR" case-sensitive +- Logout automĆ”tico após delete bem-sucedido + +### i18n +- 50+ novas strings de tradução em PT-BR, ES, EN: + - `factoryReset.*` (30+ strings) + - `importBackup.*` (15+ strings) + - `profile.dataManagement`, `importBackup`, `factoryReset` + - `common.continue`, `creating`, `deleting`, `remove` + +### Security +- Código de confirmação de 6 dĆ­gitos +- Expiração de 10 minutos (cache) +- Confirmação dupla (código + texto DELETAR) +- Email para endereƧo cadastrado +- Validação server-side de todas as aƧƵes +- Hard delete em transação DB (rollback em erro) + +### Tech Debt +- Mapeamento completo de relacionamentos para delete cascade +- Limpeza de tabelas pivot (keywords, price_histories) +- Backup versionado (v1.0) para compatibilidade futura + + ## [1.57.0] - 2025-12-18 ### Improved diff --git a/VERSION b/VERSION index 79f82f6..bb120e8 100755 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.58.0 +1.59.0