feat(ci): revisar los pull requests con IA
Revisión con IA / ai-review (pull_request) Successful in 1m58s

Replica en este repositorio la revision automatica que ya corre en
prode_app: al abrir, reabrir o actualizar un pull request, un modelo lee el
diff completo y publica comentarios pegados a cada linea mas un resumen,
firmados por el usuario ai-bot.

El modelo es gratuito y cada revision cuesta dos pedidos, porque manda todos
los archivos juntos en lugar de uno por archivo.

Los secretos se leen de Infisical al arrancar el job, asi que en el
repositorio solo quedan las credenciales de la identidad de maquina.

El prompt esta escrito sobre este proyecto en particular: turnos que se
pisan, husos horarios, autorizacion distinta para admin, jefe y cliente,
magic links tratados como credenciales, migraciones que acompañen a
schema.prisma y datos personales que no terminen en los registros.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
jpbeldomenico
2026-08-03 18:55:10 -03:00
parent 0792ac3767
commit 5e027d2c8c
4 changed files with 354 additions and 0 deletions
+60
View File
@@ -0,0 +1,60 @@
# Configuración de la revisión con IA (https://github.com/Nikita-Filonov/ai-review)
#
# Acá va sólo lo estático. Los tokens y el contexto del pull request llegan por
# variables de entorno desde .gitea/workflows/ai-review.yml, con la convención
# de doble guión bajo que usa la herramienta (VCS__PIPELINE__OWNER, etc.).
# Ojo: la sintaxis ${VARIABLE} dentro de este archivo NO se resuelve.
llm:
provider: OPENROUTER
meta:
# Modelo sin costo, 1M de contexto.
model: nvidia/nemotron-3-ultra-550b-a55b:free
max_tokens: 8000
temperature: 0.2
# Viaja como cabecera HTTP y se codifica en ASCII: sin acentos ni enies.
title: "Revision IA Taller"
http_client:
timeout: 180
api_url: https://openrouter.ai/api/v1
# --- Si este modelo deja de estar disponible ---
# El catalogo gratuito de OpenRouter rota. Si el job falla con 404 de modelo,
# listar los vigentes y reemplazar la clave model:
# curl -s https://openrouter.ai/api/v1/models | grep -o '"id":"[^"]*:free"'
# Alternativas verificadas el 03/08/2026:
# cohere/north-mini-code:free
# nvidia/nemotron-3-super-120b-a12b:free
core:
# El plan gratuito de OpenRouter admite 20 pedidos por minuto.
concurrency: 3
review:
mode: FULL_FILE_DIFF
ignore_pure_renames: true
max_context_comments: 15
max_inline_comments: 10
ignore_changes:
- "package-lock.json"
- "*.lock"
- "*.min.js"
- "*.min.css"
- "*.svg"
- "*.png"
- "*.jpg"
- "*.jpeg"
- "*.ico"
- "*.woff*"
- "public/**"
- "tsconfig.tsbuildinfo"
prompt:
context_prompt_files:
- ./.gitea/ai-review/context.md
summary_prompt_files:
- ./.gitea/ai-review/summary.md