[QQ-1736] feature/migration-detector#32
Conversation
wedneyyuri
left a comment
There was a problem hiding this comment.
Bom trabalho no conceito e na spec do README! A implementação está bem encaminhada, mas encontrei alguns pontos que precisam de atenção antes do merge — especialmente o fail_on_breaking que não tem efeito no código atual.
Resumo:
- 🔴 2 issues críticas
- 🟠 4 issues altas
- 🟡 6 issues médias
- 🟢 2 issues baixas
Pontos positivos:
- README excelente com spec clara, guia de setup e regras de governança
- Boa estratégia de fallback quando IA falha (default para
controlled) - Promoção de confiança inteligente (safe → controlled quando baixa confiança)
- Formatação limpa da mensagem Slack com cores por severidade
- Suporte flexível de providers (GitHub Models vs hub externo)
Security fixes: - Replace grep -Eiv with grep -Fiv to prevent command injection - Remove SLACK_WEBHOOK_URL from collect step env, use boolean flag - Use curl --data @- to pipe JSON payload via stdin Code quality improvements: - Add set -euo pipefail to all multi-line shell blocks - Fix mutation patterns with immutable spread syntax - Add retry logic (2 retries, 2s sleep) for AI API calls - Add warning log when file truncation occurs - Add env var validation with user-friendly error messages Refactoring: - Split requirements.txt into runtime and dev dependencies - Remove undocumented "MO" fallback key from build_slack_text - Replace lambda assignment with def for PEP 8 compliance - Update tests to reflect new behavior All 63 tests pass. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Code Review Fixes AppliedI've reviewed PR #32 and applied fixes for 13 security and code quality issues across 7 files. All changes have been committed in Summary of Changes🔒 Security Fixes (CRITICAL/HIGH)
✅ Code Quality Improvements (HIGH/MEDIUM)
🧹 Refactoring (MEDIUM/LOW)
Verification✅ All 63 tests passing Files Modified
The code follows all security best practices, uses immutable patterns throughout, and has comprehensive test coverage. 🚀 |
LFelipe-sb
left a comment
There was a problem hiding this comment.
🚀
Fiz uma sugestão, mas vou deixar aprovado caso avalie não ser necessário.
|
Talvez uma melhoria para projetos django seria rodar esse cara aqui antes, não teria custo da IA: |
|
@gleberdiniz , acho excelente conseguimos colocar isso nos projetos que usam o Django até para reduzir o custo com IA. Olhando a doc, achei bem completo os erros mapeados e que podemos fazer para uma futura melhoria é ajustar o prompt aqui para seguir estas regras também. Como essa actions além de classificar, também fará um resumo do que está sendo alterado, principalmente para contexto do time de dados, acho que não seria escopo desse repo, mas sim dos que utilizam o framework, o que acha? |
Ticket
Automatizar a notificação para o time de dados sempre que houver uma migração no banco.
Descrição
Após alguns alinhamentos com o time de dados e uma das dores que eles trouxeram é com relação a eventuais mudanças que a gente possa fazer que acabe quebrando do lado deles.
Há um tempo existiu uma iniciativa de automatizar no Jira essa comunicação, mas que acabou não indo tão pra frente.
Visando aumentar a integração entre tech e dados, esse card visa trazer uma proposta para notificação automática sempre que houver alguma migração no banco, considerando os cenários:
Safe Change
Descrição
Adição da coluna qty na tabela database.table.
Exemplos:
Mudança Controlada
Descrição
Alteração de VARCHAR (30) para VARCHAR (255) do campo qty na tabela database.table
Exemplos:
Breaking Change
Descrição
Remoção do campo qty na tabela database.table
Exemplos: