A IA escreve mais PRs. Quem valida? — Ali-Reza Adl-Tabatabai, Sonar
Autoria: AI Engineer · Assistir no YouTube
Vídeo de autoria do canal indicado, não da IANIA; todos os direitos pertencem ao criador. Transcrição, resumo e tradução gerados automaticamente; o conteúdo no idioma original é preservado na versão em idioma original.
Idioma original: inglês
Vídeo original: AI Writes More PRs. Who Validates Them? — Ali-Reza Adl-Tabatabai, Sonar · Canal: AI Engineer · 11:05 · Assistir no YouTube
Tópicos: Agentes de IA, Automação de tarefas e workflows, Engenharia de software com IA
Ali-Reza Adl-Tabatabai explica como o aumento de PRs gerados por IA pressiona a etapa centralizada de validação, formada por CI e revisão de código. Ele apresenta a abordagem agentic de validação da guitar.ai, que revisa PRs, analisa falhas de CI, corrige problemas e pode aprovar e mesclar alterações conforme regras definidas. À medida que ganham confiança no sistema, as equipes podem ampliar gradualmente a automação. A integração com SonarQube e a combinação de agents com análise estática de programas são apontadas como formas de melhorar a precisão, a cobertura e a produtividade.
Pontos-chave
Seção intitulada “Pontos-chave”- CI e revisão de código são etapas críticas para aplicar controles de qualidade, segurança e conformidade antes de integrar alterações.
- O aumento do volume e do tamanho dos PRs gerados por IA pode elevar o custo de revisão e o risco de falhas em produção.
- A guitar.ai automatiza a revisão de PRs, a análise de falhas de CI e a correção de problemas.
- As equipes podem configurar regras próprias, verificações personalizadas e automações de workflow.
- A automação pode avançar gradualmente: revisão, bloqueio de PRs, correções automáticas e, por fim, aprovação e merge automáticos.
- A análise de falhas de CI e a categorização de PRs podem gerar insights úteis para equipes de plataforma e liderança.
- A guitar.ai usa um control plane, um agent harness próprio e um proxy para roteamento entre modelos.
- A integração com SonarQube combina agents com análise de programas para buscar maior precisão e cobertura.
Capítulos
Seção intitulada “Capítulos”| Início | Capítulo | Resumo |
|---|---|---|
| 00:13 | O desafio da validação centralizada | A etapa de CI e revisão de código é essencial, mas pode se tornar cara, lenta e difícil de manter conforme as equipes crescem. |
| 02:56 | Automação agentic da validação de PRs | A guitar.ai automatiza revisões, análise e correção de falhas de CI, além de permitir aprovação e merge automáticos conforme regras. |
| 05:40 | Confiança, automação e insights para equipes | As equipes ampliam a automação conforme confiam no sistema, que também categoriza falhas de CI e tipos de PRs. |
| 08:25 | Arquitetura e integração com SonarQube | A solução combina um agent harness próprio com análise de programas para buscar validação mais precisa, ampla e eficiente. |
| 10:04 | Resultados e conclusão | A automação reduz o atrito da validação e, combinada à análise algorítmica de programas, pode acompanhar o ritmo de geração de código por IA. |
Citações
Seção intitulada “Citações”Agora há muito mais PRs sendo gerados graças à IA — e PRs maiores. — 02:56
Há uma trajetória clara em direção a PRs totalmente automatizados. — 05:40
Ter nosso próprio agent harness nos permitiu otimizar especificamente para o caso de uso de validação. — 08:25
A validação transforma-se em um ponto de atrito. — 10:35
Conceitos e entidades
Seção intitulada “Conceitos e entidades”- Ali-Reza Adl-Tabatabai (pessoa): Cofundador da guitar.ai e palestrante sobre validação de código na era da IA.
- guitar.ai (empresa): Empresa adquirida pela Sonar que desenvolveu uma abordagem agentic para automatizar a validação de PRs.
- Sonar (empresa): Empresa que adquiriu a guitar.ai e está integrando sua solução ao SonarQube.
- SonarQube (ferramenta): Produto da Sonar cuja análise de programas está sendo combinado com a validação baseada em agents.
- CI (conceito): Integração contínua, usada junto à revisão de código como parte da validação centralizada de alterações.
- PR (conceito): Proposta de alteração de código que passa por revisão e validação antes de ser mesclada.
- agent harness (conceito): Camada de execução própria da guitar.ai que gerencia agents, contexto, memória, tool calling e integrações.
- análise de programas (conceito): Conjunto de técnicas como análise de fluxo de controle, fluxo de dados e taint analysis, combinadas com agents para validar código.
Tradução completa (pt-BR)
Seção intitulada “Tradução completa (pt-BR)”00:13 Vamos começar. Boa tarde a todos. Sou Ali, um dos fundadores da guitar.ai AI e, anteriormente, CEO até cerca de um mês atrás, quando fomos adquiridos pela Sonar. Agora fazemos parte da Sonar, e vocês ouviram bastante nos últimos dias sobre a importância da verificação na era da IA. Hoje, vou concentrar minha palestra em código e na verificação de código.
00:44 Então, em quase todas as equipes de software, há uma fase centralizada de validação que consiste basicamente em CI mais revisão de código. À medida que a engenharia cresce, essa fase desempenha um papel muito crítico, especialmente em um mundo com IA. Primeiro, ela impõe centralmente todos os seus critérios de qualidade. São critérios de segurança, conformidade e qualidade de código. Essa fase está no caminho crítico para levar suas alterações à produção. Por isso, quanto mais rápida, melhor. Mas, à medida que você amplia a
01:17 engenharia, isso se torna um desafio. À medida que você tem builds e tarefas mais demorados, há fluxos assíncronos de revisão da equipe entre diferentes locais e regiões geográficas, e as coisas naturalmente ficam mais lentas conforme você cresce. Essa também é uma fase em que você acaba gastando muito com infraestrutura para desenvolvedores. Há muitas ferramentas caras que precisam ser integradas e ampliadas à medida que sua organização cresce, e tudo isso roda em uma infraestrutura muito cara.
01:48 Por esses motivos, essa fase costuma ser o principal foco da equipe de plataforma da sua organização. Mas qualquer tipo de falha nessa fase é muito cara. As falhas introduzem um ciclo externo que normalmente é medido em horas e dias. Portanto, as falhas custam caro. São dispendiosas. Elas realmente reduzem sua velocidade. Você perde tempo dos desenvolvedores, e isso é agravado pelas interrupções no estado de fluxo.
02:23 Também é muito caro otimizar essa fase. Você tem muitos sistemas fragmentados, integrados por meio de configurações e scripts sob medida. E geralmente há uma equipe de plataforma com restrições de pessoal e de tamanho tentando manter tudo funcionando para você. Tentar resolver tudo isso com IA também é complexo, porque exige uma orquestração complexa de workflows, envolvendo várias interações assíncronas, workflows de equipe, integrações entre ferramentas e assim por diante.
02:56 Na verdade, a IA meio que piora ainda mais o problema. Agora há muitos PRs sendo gerados, mais PRs do que antes, graças à IA, e PRs maiores, todos os quais podem ter defeitos. Assim, os custos no ciclo de vida do desenvolvimento estão se deslocando para etapas posteriores. Você tem muito mais código para revisar. Há potencial para muito mais falhas em produção. E, por isso, suas opções são difíceis: ou você desacelera e pede aos desenvolvedores que revisem cada PR com muito cuidado, ou aprova PRs sem uma revisão cuidadosa e corre o risco de incidentes
03:30 em produção. De qualquer maneira, os desenvolvedores ficam menos satisfeitos, o sentimento deles piora e a produtividade é muito menor do que você esperaria. Então, qual é a resposta? Claro: mais IA. É uma abordagem agentic para validação, que é essencialmente o que criamos na guitar e que agora também estamos disponibilizando como parte da Sonar. Basicamente, temos um agent que automatiza completamente todas as
04:01 etapas de validação e, como resultado, entrega PRs verdes, prontos para merge, ou faz o merge automaticamente. Como isso funciona? Primeiro, quando você cria seu PR, ele o revisa e publica issues e comentários inline. Nada surpreendente até aqui. Mas nosso objetivo foi tornar essa experiência o mais livre possível de ruído, tanto na forma como lidamos com a UX quanto ao publicar issues reais e importantes. Você pode personalizar a revisão com suas próprias regras, adicionar suas próprias verificações personalizadas e acionar suas próprias
04:34 automações de workflow personalizadas. Você também pode configurar o sistema para bloquear o merge caso haja descobertas de revisão de código não resolvidas. Ele também analisa falhas de CI e publica um resumo das causas principais dessas falhas. Em particular, é muito bom em detectar testes instáveis. Você pode até configurar regras para repetir automaticamente os testes instáveis, se quiser. Esse é um recurso muito popular. Também é possível corrigir automaticamente quaisquer problemas de revisão de código ou falhas de CI. Qualquer tipo de falha que ocorra no CI,
05:08 ele também pode corrigir para você, além de resolver quaisquer problemas que apontar. Você pode pedir especificamente que ele corrija um problema ou, o que é mais interessante, configurá-lo para repetir o processo automaticamente até que todos os problemas identificados tenham sido corrigidos no seu PR e você tenha um PR verde, pronto para merge. Por fim, você pode aprovar e fazer merge automaticamente de PRs verdes. É possível definir regras e condições que controlam quando os PRs são
05:40 aprovados automaticamente pelo agent e recebem merge automático. Estamos vendo uma tendência muito interessante entre nossos usuários. Há uma trajetória clara em direção a PRs totalmente automatizados. À medida que os usuários usam o sistema e desenvolvem confiança na precisão da IA, vemos que avançam rumo à automação completa. Primeiro, recebem revisões e ficam satisfeitos com elas. Desenvolvem confiança na precisão das revisões e percebem que elas não são apenas precisas, mas também apontam problemas realmente importantes. Então,
06:13 dão poder ao agent, permitindo que ele comece a bloquear PRs. Em seguida, começam a usar os recursos de correção automática para deixar os PRs verdes automaticamente e corrigir todos os problemas apontados pela revisão de código ou quaisquer falhas de CI que ocorram. E o avanço realmente interessante que começa a acontecer agora é que os usuários estão configurando regras que definem quando o agent aprova e faz merge de PRs automaticamente. Assim, com o tempo, à medida que desenvolvem confiança no sistema, desbloqueiam mais níveis de
06:47 automação e, com esses níveis adicionais e a confiança que estão adquirindo, obtêm mais valor do sistema. Como o sistema processa todos os PRs usando IA, ele também consegue descobrir novos tipos de insights. Por exemplo, um insight muito útil para as equipes de plataforma é a categorização das principais falhas de CI. Onde estão ocorrendo falhas no seu sistema de CI, que fazem os desenvolvedores se depararem com problemas? São problemas de instabilidade que você precisa resolver melhorando a confiabilidade dos testes? Ou são problemas de infraestrutura que você precisa resolver? Ou há outros tipos de falhas que eles estão encontrando?
07:21 Isso é muito, muito útil para as equipes de plataforma. Também temos outro exemplo de insights habilitados por IA: a categorização de PRs. O que exatamente está acontecendo com os PRs que estão sendo incorporados por toda a sua equipe de engenharia? Isso é extremamente útil para as equipes de liderança. Por exemplo, qual é a proporção de PRs destinados ao desenvolvimento de funcionalidades, à correção de problemas, a tarefas rotineiras, a refatorações e assim por diante?
07:53 Agora, olhando para os componentes internos do sistema, há vários componentes que constituem a guitar. Há três partes interessantes aqui. Uma é o plano de controle, que atua como camada de orquestração para lidar com workflows de PR. Depois, há um runtime de agent, ou harness. Criamos nosso próprio harness, que gerencia a execução de vários agents, o gerenciamento de contexto, o gerenciamento de memória, o tool calling, todas as
08:25 integrações e assim por diante. Ter nosso próprio agent harness realmente nos permitiu otimizar especificamente para o caso de uso de validação e otimizar o custo de token, a precisão e a cobertura do próprio agent. Isso nos permite, essencialmente, garantir resultados a um preço fixo por PR, oferecendo resultados de ótima qualidade. Também temos um proxy de NLM, que gerencia o roteamento entre diferentes modelos e coisas como o failover.
09:00 Agora que fazemos parte da Sonar, estamos integrando a guitar ao sonar cube. Há uma enorme oportunidade aqui de combinar uma abordagem agentic para validação com análise de programas. Ou seja, combinar agents com coisas como análise de taint, análise de fluxo de controle, análise de fluxo de dados e análise de composição de software. Assim, combinamos todas as abordagens tradicionais com agents. Acreditamos que há uma enorme oportunidade aqui e que, juntos, podemos obter uma
09:32 precisão muito melhor, uma cobertura muito maior e um preço excelente. Em termos gerais, os resultados e o valor que estamos vendo em tudo isso são: qualidade muito melhor, segurança muito melhor, especialmente com código gerado por IA; entregas mais rápidas graças a toda a automação, que leva os PRs diretamente a PRs aprovados e com merge feito; produtividade e sentimento dos desenvolvedores muito melhores. Assim, eles passam menos tempo revisando código e se preocupando com o que está acontecendo em produção, com mais confiança, além de
10:04 percepção, porque agora você tem uma percepção muito melhor, já que há muita automação em vigor e menos trabalho braçal. E, por fim, os recursos que criamos para as equipes de plataforma dão a elas muito mais capacidade para corrigir problemas, adicionar personalizações e obter insights sobre essa parte crítica do ciclo de vida do desenvolvimento de software. Para concluir, a validação de PR é realmente crucial, ainda mais com IA, mas a IA transforma a validação em um ponto de atrito.
10:35 E o Gitar, o que criamos, permite automatizar essa etapa: automatizar totalmente a validação de PR, desde a criação dos PRs até o merge, eliminando completamente esse atrito e ajudando você a acompanhar o ritmo em que está gerando código com IA. E, por fim, a combinação do uso de agents, fazendo validação agêntica, com a análise algorítmica de programas vai oferecer algo que, acredito, será muito melhor do que
11:05 qualquer uma das duas abordagens isoladamente. Se quiser conversar mais e ver mais, ou se quiser assistir a uma demonstração, venha nos visitar no estande P7, logo ali no corredor. Obrigado.
Transcrição original
[00:13] Let’s get started. Um, good afternoon everyone. I’m Ali and um, I’m one of the founders of guitar.ai AI and previously the CEO up until about a month ago where we were acquired by Sonar and now we are part of Sonar and you’ve heard a lot in the past few days about the importance of verification in the age of AI and so today I’m going to focus my talk on code and verifying code.
[00:44] So in in almost all software teams there is this centralized validation phase that is basically CI plus code review and as you scale your engineering this plays this phase plays a very critical part especially in an AI world. Uh first it enforces all your quality gates centrally. So these are security compliance code quality gates. It’s on the critical path of getting your changes into production. So the faster is always the better. But as you scale
[01:17] engineering, this becomes kind of a challenge. As as you have longer running builds and tasks, you have asynchronous team review flows across sides and geographies and things just get slower naturally as you grow. Um, this is also a phase where you end up spending a lot of developer infrastructure dollars. So there’s a lot of expensive tools here that need to be integrated and scaled up as you um scale your organization and it all runs on very expensive
[01:48] infrastructure. Uh for these reasons it’s often times the main focus of your platform organization team or your platform team. Um but any kind of failure in this phase is very expensive. It introduces failures introduce an outer loop that are typically measured in hours and days. So failures are expensive. They costly. They really slow down your velocity. Uh you lose developer time and that’s compounded by disruptions to your flow state.
[02:23] It’s also very expensive to optimize. So you’ve got a lot of fragmented systems that have been integrated together with bespoke configuration and scripting. and you have a usually headcount restricted, constrained platform organization trying to keep it all up and running for you. And trying to address that all with AI is also kind of complex because it requires complex workflow orchestration involving various inter asynchronous interaction, team workflows, integrations across tools and so on.
[02:56] In fact, AI kind of makes the problem even worse. uh you’ve got a lot of PRs now being generated, more PRs than before uh thanks to AI and bigger PRs uh all of which can have defects and so your costs in your development life cycle are kind of shifting to the right. You have a lot more code to review. You can have potential for a lot more failures in production and and so your choices are kind of tough here. either you slow down and ask developers to review every PR very carefully or you rubber stamp PRs and you risk incidents
[03:30] in production. Either way, you’ve got less happy developers, lower sentiment, and much less productivity than than you’d expect. So, what’s the answer here? Of course, it’s more AI. It’s uh an agentic approach to validation which is essentially what we built at guitar um that we’re now also shipping uh as part of sonar. And basically what we’ve got here is an agent that fully automates all the
[04:01] validation steps and as outcomes it delivers for you green PRs that are ready to merge or merge automatically. Now how does this work? Well first when you create your PR it reviews your PR and posts issues and inline comments. No surprise there. But our goal has been to really make this experience as noisefree as possible, both in the way we handle the UX as well as posting issues that are real and really matter. You can customize your review with your own rules and you can add your own custom checks and you can trigger your
[04:34] own custom workflow automations. And then you can also configure the system to block merging if there are any unresolved code review findings. It also analyzes CI failures and posts a summary of the root causes of those failures. And in particular, it’s really good at catching flaky tests. And you can even set up rules that automatically retry flaky tests if you want. That’s a very popular feature. You can also automatically fix any code review issues or any CI failures. Any kind of uh failures that happen in CI,
[05:08] it can fix it for you as well as address any of the issues that it raises. You can either ask it to specifically fix an issue or more interestingly you can set it up to automatically loop until all the fish issues have been fixed in your PR and you have a green PR ready to merge. And finally, you can automatically approve and merge PRs that are green. you can define rules and conditions that control when uh PRs
[05:40] get automatically approved by the agent and merged automatically. So we’re seeing actually a very interesting trend in our users. There’s a clear trajectory towards fully automated PRs. uh as users use the system and as they build trust in the accuracy of the AI what we see is they work towards full automation first they get reviews and they’re happy with they build trust in the accuracy of the reviews they see that these reviews are not only accurate but they’re raising really important issues so then they
[06:13] give teeth to the agent by allowing it to start blocking the PRs and then they start using the autofix capabilities to automatically turn PRs green and fix all the issues that were raised by code review or any CI failures that come up. And then where the real interesting leap is beginning to happen now is users setting up rules that define when the agent automatically approves and merges PRs. So over time as they build trust in the system they unlock more levels of
[06:47] automation and with the additional levels of automation and with the trust they’re getting more value out of the system. Now because the system processes every single PR using AI it’s also able to uncover new types of insights. For example, uh one of the insights that are is very useful to platform teams is a categorization of the top CI failures. Where are you seeing failures in your CI system where your developer is running into failures? Are these flakiness issues that you can that you need to
[07:21] address by improving the reliability of the tests or are there infrastructure issues that you need to address or are there other kinds of failures that they’re running into? Very very useful for platform teams. We also have another example of what what else we have in terms of AI enabled insights are categorization of PRs. What exactly is happening across your engineering team in terms of the PRs that are being landed? This is extremely useful for leadership teams. For example, what amount of PRs are
[07:53] going to feature development versus fixing issues, chores, refactors, and so on. Now under the hood, if you look at the system, there’s a number of components that constitute guitar. There are three interesting pieces here. One is the control plane that acts as this orchestration layer for handling PR workflows. And then there’s an agent runtime or or harness. We built our own harness here that handles multi- aent execution, context management, memory management, um tool calling, all the
[08:25] integrations, etc. And having this having our own agent harness has really allowed us to optimize specifically for the validation use case and it’s allowed us to optimize for token cost, precision and coverage of the agent itself. So that allows us to essentially guarantee outcomes at a fixed PR price while giving really good quality results. We also have an NLM proxy that handles the routing across different models as well as things like failover.
[09:00] Now that we’re part of Sonar, we’ve been integrating guitar with sonar cube. There’s a ton of opportunity here in combining an agentic approach to validation with program analysis. So combining agents with things like u taint analysis, control flow analysis, data flow analysis, software composition analysis. So all the traditional approaches combined with agents. We think there’s a ton of opportunity here and that together you can get much
[09:32] better precision, much better coverage at a really great price point. So the overall results uh the value that we’re seeing in in all of this is much better quality, much better security, especially with AI generated code, faster delivery times through all the automation going from PRs straight to approved and merged PRs, much higher productivity and sentiment by developers. So less time spent on actually reviewing code and worrying about what’s happening in production with more confidence as well as
[10:04] sentiment because now you much better sentiment now because you have a lot of automation in place and less grunt work. And finally the to the features that we’ve built for platform teams gives them a lot more leverage to be able to fix issues and to add customizations and see insights in this critical part of the software development life cycle. To wrap up, PR validation is really critical, even more so in AI, but AI turns validation
[10:35] into a friction point. And guitar, what we’ve built, allows you to automate this step, fully automate PR validation, go from created PRs all the way to merge, completely eliminating this friction and helps you keep up with the rate at which you’re generating code from AI. And finally, the combination of using agents uh doing a gentic validation plus an algorithmic program analysis will give you something that that I think is going to be much better than
[11:05] either alone. If you want to talk more and you want to see more, if you’d like to see a demo, come on and visit us at booth number P7 right down right down the hall there. Thank you.