refactor: executa skill refactor-arch (MVC) nos 3 projetos + reports … - #25
Open
guilhermemiller wants to merge 3 commits into
Open
refactor: executa skill refactor-arch (MVC) nos 3 projetos + reports …#25guilhermemiller wants to merge 3 commits into
guilhermemiller wants to merge 3 commits into
Conversation
…+ docs Aplica a skill refactor-arch para auditar e refatorar os 3 projetos para o padrão MVC, com relatórios de auditoria e documentação completa. Project 1 (code-smells-project, Python/Flask): - 16 findings (5 CRITICAL/4 HIGH/4 MEDIUM/3 LOW) - Divido monolito em config/models/services/controllers/routes/middlewares - SQL parametrizado, backdoors /admin removidos, secrets via env Project 2 (ecommerce-api-legacy, Node/Express): - 13 findings (5 CRITICAL/3 HIGH/3 MEDIUM/2 LOW) - God class AppManager -> models/services/controllers/routes - badCrypto -> bcrypt, secrets via env, relatorio protegido por auth, JOIN (sem N+1) Project 3 (task-manager-api, Python/Flask): - 14 findings (4 CRITICAL/4 HIGH/4 MEDIUM/2 LOW) - Logica extraida das routes para services, MD5 -> werkzeug - senha nao mais exposta nas respostas, erros centralizados Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ntication in user service
rafadeamaral
added a commit
to rafadeamaral/mba-ia-refactor-projects-skill
that referenced
this pull request
Aug 13, 2026
Resultado da execução da skill refactor-arch no projeto 3 (Flask + SQLAlchemy). Auditoria com 25 findings (4 CRITICAL, 5 HIGH, 9 MEDIUM, 6 LOW) em reports/audit-project-3.md. Este projeto já possuía models/, routes/, services/ e utils/, mas com separação apenas nominal. A skill detectou o ponto de partida como nível B e adotou estratégia diferente dos projetos 1 e 2: manteve a árvore existente e realocou responsabilidade, adicionando as camadas ausentes (config/, controllers/, validators/, middlewares/, routes/dto/). Correções principais: - to_dict() do model devolvia o hash da senha em 4 endpoints → DTOs com allowlist na camada de views - MD5 sem salt → werkzeug.security com re-hash das credenciais legadas no login - token 'fake-jwt-token-<id>' que nenhuma rota verificava → removido, com ponto de extensão de auth pronto em middlewares/auth.py - SECRET_KEY e credenciais SMTP hardcoded → config/settings.py + .env.example - db.create_all() no import (um import de app.py criava instance/tasks.db) → create_app() + scripts/init_db.py - rotas de até 90 linhas → controllers/; maior handler agora tem 12 linhas - Task.is_overdue() existia com 0 chamadas enquanto a regra era reescrita 6× nas rotas → adotado como fonte única - NotificationService e 5 helpers com 0 imports → decisão explícita de adotar ou remover, símbolo a símbolo - 12 except: nus → exceções de domínio + errorhandler central - N+1 em /tasks e /reports/summary → joinedload e GROUP BY - 33 usos de APIs deprecated (datetime.utcnow, Model.query.get) → 0 Validação contra baseline da versão original, ambos recém-semeados: 35/35 status codes idênticos, 18/18 payloads de leitura idênticos, 22/22 endpoints registrados. Cascade de deleção verificado equivalente. Cinco mudanças de contrato deliberadas documentadas. O finding devfullcycle#25 (senha mínima de 4 caracteres) foi deliberadamente NÃO alterado: elevar o mínimo é política de produto, não refatoração. Registrado no relatório. Inclui a cópia da skill em task-manager-api/.claude/skills/refactor-arch/, usada sem alteração em relação aos projetos 1 e 2. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Aplicado a skill refactor-arch para auditar e refatorar os 3 projetos para o padrão MVC, com relatórios de auditoria e documentação completa.
Project 1 (code-smells-project, Python/Flask):
Project 2 (ecommerce-api-legacy, Node/Express):
Project 3 (task-manager-api, Python/Flask):