Recebe uma PR do GeoLens com comentarios de rejeicao e age sobre ela: se o comentario eh valido, implementa o fix e faz push; se nao procede, comenta no PR explicando o motivo. Em ambos os casos, reenvia a PR ao GeoLens para nova revisao. Triggers: /fix-sus-pr <PR_URL>, 'corrigir PR rejeitada', 'responder revisao GeoLens', 'fix PR review'.
Quando o GeoLens (code review automatizado) rejeita uma PR, essa skill processa TODOS os comentarios e responde adequadamente: corrige o que for valido, contesta o que nao procede, e SEMPRE reenvia para nova revisao.
/fix-sus-pr <PR_URL>
Exemplo: /fix-sus-pr https://github.com/tecnologia-ibtech/geovendas-entity/pull/194
gh pr view "<PR_URL>" --json title,body,comments,reviews,headRefName,baseRefName,url,files
Coletar:
_pr_url: URL completa_branch: headRefName (branch do PR)_repo: repositorio (extrair da URL, formato: owner/repo)_pr_number: numero do PRgh api repos/<OWNER>/<REPO>/pulls/<PR_NUMBER>/comments
gh api repos/<OWNER>/<REPO>/pulls/<PR_NUMBER>/reviews
Montar lista de rejeicoes — cada item com: id, autor, arquivo, linha, texto.
Se NAO houver comentarios de rejeicao → pular direto para Step 5 (retry GeoLens).
Para cada comentario, decidir: VALIDO ou NAO PROCEDE.
Na duvida? Tratar como VALIDO e implementar a correcao mais conservadora.
cd <REPO_DIR>
git checkout <BRANCH>
git pull origin <BRANCH>
Ler o arquivo, entender o contexto, implementar o fix
Commit e push:
git add <arquivos-alterados>
git commit -m "fix: <descricao do problema corrigido per review GeoLens>"
git push origin <BRANCH>
gh api repos/<OWNER>/<REPO>/pulls/<PR_NUMBER>/reviews \
-X POST \
-f body="Corrigido. <breve descricao do que foi alterado>" \
-f event="COMMENT"
Responder diretamente com justificativa clara:
gh api repos/<OWNER>/<REPO>/pulls/comments/<COMMENT_ID>/replies \
-X POST \
-f body="Esse comportamento eh intencional porque: <razao tecnica ou de dominio>."
Independente do que foi feito (fix, contestacao, ou nenhum comentario):
curl -X POST http://192.168.37.206:8001/api/pr-reviews \
-H "Content-Type: application/json" \
-d '{"url": "<PR_URL>", "submitted_by": "fix-sus-pr"}'
Se o endpoint nao responder → logar o erro e reportar ao user. Nao bloquear.
PR: <url>
Comentarios processados: N
- Corrigidos: X (commits: ...)
- Contestados: Y (explicacao inline no PR)
GeoLens retry: OK | FALHOU (<motivo>)
gh pr view e gh api — NAO abrir browser para inspecionar PR