> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ugps.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Autofix

> Arquitectura del flujo hibrido de Sentry Autofix y su integracion con Foundry

## Resumen

`sentry-autofix` usa una arquitectura distinta al resto de agentes. En vez de un solo React agent, corre un `StateGraph` con etapas explicitas y una critica intermedia antes de entregar el parche final.

Archivos fuente:

* `apps/api-nestjs/src/modules/sentry-autofix/application/services/autofix-hybrid-agent.service.ts`
* `apps/api-nestjs/src/modules/sentry-autofix/infrastructure/services/autofix-opus-langchain.service.ts`

## Grafo hibrido

Nodos actuales:

```text theme={null}
seed_context
  -> investigate
  -> generate_patch
  -> critic_patch
  -> handoff
```

Flujo:

1. `seed_context` inicia estado y revision count.
2. `investigate` determina causa probable, archivos a tocar y restricciones.
3. `generate_patch` propone un parche sobre los archivos triageados.
4. `critic_patch` revisa calidad y puede pedir una nueva iteracion.
5. `handoff` entrega el parche aprobado.

Si la critica rechaza el parche y aun hay margen de revision, el flujo vuelve a `generate_patch`.

## Repositorios soportados

Hoy el modo hibrido esta limitado por codigo a:

* `UGPS-2025/raul-ugps`
* `UGPS-2025/BackApi`

## Que agrega la investigacion

La etapa de investigacion entrega:

* resumen del incidente
* causa probable
* archivos que probablemente requieren cambio coordinado
* archivos relacionados inspeccionados
* restricciones de implementacion

Eso se transforma en contexto adicional para el generador del parche.

## Foundry y Anthropic

`AutofixOpusLangchainService` usa `ChatAnthropic` con bootstrap de autenticacion desde `AnthropicFoundryService`.

Puntos clave:

* el deployment sale de Azure Foundry
* las llamadas pueden incluir `maxTokens` y `temperature` por request
* el servicio arma headers autenticados para cada request
* si LangSmith esta activo, adjunta callbacks y puede resolver URL de la corrida

## Relacion con Teams engineering

El agente de ingenieria de Teams no genera parches por si mismo. Lo que hace es orquestar la capa de autofix mediante tools como:

* `list_autofix_runs`
* `get_autofix_run_detail`
* `trigger_sentry_autofix`
* `approve_autofix_pr`
* `resolve_sentry_issue`

Eso deja a `sentry-autofix` como motor de ejecucion y a Teams como interfaz operativa.

<Warning>
  Si cambias el flujo de Autofix, revisa tambien el agente de ingenieria y su documentacion. Si no, el bot puede quedar describiendo un flujo que ya no existe.
</Warning>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.