Pular para o conteúdo
fernando.moretes.com
BlogEstudosCursosE-booksOpen SourcePodcasts
Loading…
Fernando Azevedo

Arquiteto de TI Especialista

Arquitetura, AWS, IA em produção, sistemas financeiros e FinOps, escritos a partir do que foi operado, com os números.

  • LinkedIn
  • GitHub
  • E-mail

Conteúdo

  • Blog
  • Estudos de arquitetura
  • Cursos
  • E-books
  • Open Source
  • Podcasts
  • Assuntos
  • Trilhas

Ferramentas

  • Well-Architected self-check
  • Arquitetura deste site
  • Números públicos
  • Histórico de estudo

Sobre

  • Comunidade
  • IA Builder
  • Perfil
  • Currículo (CV)
  • Trabalhe comigo
  • Media kit
  • RSS do blog
  • RSS dos estudos
  • Artigos narrados (podcast)
  • llms.txt
  • Termos, privacidade e uso de IA

(c) 2026 Fernando Francisco Azevedo

Blog/Artigo
RSSMarkdownLLMs
IA & AgentesNotas de Campo

A IDE Virou a Exceção: Como Passei a Construir Loops em Vez de Código

29 de jun. de 2026 5 minIntermediário Com apoio de IA000 visualizações00 reproduções
Ouvir artigo

11:32 · voz do Fernando

Há seis meses, abria minha IDE todos os dias. Hoje abro algumas vezes por semana, e quando abro, é porque algo realmente exige minha atenção: um bug gnarly de concorrência, uma decisão de design greenfield, uma revisão de segurança que não delego. O que mudou não foi a ferramenta. Foi o nível de abstração onde opero. Parei de escrever código e comecei a projetar loops. Os agentes escrevem e executam o código. Eu projeto o que os faz funcionar: o trigger, a topologia, o verificador, a regra de parada. Isso não é hype, é o que está rodando em produção agora mesmo, gerando os artigos deste site enquanto você lê.

A Virada: De Prompt Engineering para Loop Engineering

Durante anos, o trabalho de quem usava IA era escrever prompts melhores. Mais contexto, mais exemplos, melhor formatação. O gargalo era a palavra certa no lugar certo. Isso ainda importa, mas deixou de ser o trabalho principal.

Em junho de 2026, Addy Osmani nomeou o que muitos de nós já sentíamos: loop engineering. Boris Cherny foi ainda mais direto: meu trabalho agora é escrever os loops que dirigem o Claude. Não o prompt dentro do loop, o loop em si.

O que é um loop de agente, concretamente? É um ciclo com quatro elementos que você projeta explicitamente:

  • Trigger: o que inicia o ciclo (um cron, um evento, uma chamada HTTP, outro agente)
  • Topologia: quantos agentes, em que ordem, com que ferramentas
  • Verificador: o que decide se a saída é boa o suficiente para avançar
  • Stop-rule: o que decide que o loop terminou, por sucesso, por timeout, por orçamento

Quando o gargalo era o prompt, eu ficava no editor de texto. Quando o gargalo é o loop, fico no quadro branco e no YAML do EventBridge. A IDE virou a exceção, não o ambiente padrão.

Os Loops que Rodam em Produção Agora

Geração diária de artigos bilíngues: EventBridge dispara uma Lambda que chama Bedrock AgentCore Web Search para grounding. Se a busca falha, o agente cai automaticamente para grounding por texto-fonte, o artigo sai de qualquer forma. O loop tem verifier de qualidade e abort por timeout.
Livros e estudos capítulo a capítulo: nenhuma chamada única carrega o livro inteiro. Cada capítulo é um sub-loop com cache próprio. Se o processo reinicia, os capítulos já gerados são pulados. Retry-with-attempts + circuit breaker garantem que um capítulo problemático não derruba o livro inteiro.
Cron de áudio às 02:00, idempotente por design: o loop de geração de voz roda com preferência por GPU; se não há GPU disponível, cai para Mac. O estado é um ponteiro no S3, não há estado em memória. Um re-run retoma de onde parou. Idempotência não é feature, é arquitetura.
Keepalive loop engenheirado ao vivo: um render longo dentro de uma janela curta de execução. Projetei um heartbeat que mantém o processo vivo, uma lição pequena mas real sobre triggers e stop-rules: sem a regra de parada certa, o keepalive vira loop infinito.
O padrão /loop: dois modos que uso dependendo do contexto. Self-paced: o modelo escolhe a cadência, bom para tarefas exploratórias onde a profundidade importa mais que o tempo. Fixed-interval: o loop bate em intervalos fixos, bom para pipelines previsíveis onde SLA importa.

A Fábrica de Loops de Agente

Cada loop que rodo segue esta topologia: um trigger externo dispara o ciclo, o agente raciocina/age/observa em sub-loops, um verificador decide se avança ou itera, e uma stop-rule (budget + timeout + human gate) decide quando parar.

⏰ Triggers: Event Sources
  • EventBridge · Scheduled Rule
  • S3 / API GW · Event Trigger
🤖 AWS Bedrock: Agent Loop
  • Lambda · Loop Orchestrator
  • Bedrock · Reason / Plan
  • AgentCore · Web Search / Tools
  • Tool Output · Observe / Parse
✅ Control: Verifier + Stop-Rules
  • Verifier Lambda · Quality Gate
  • Budget Guard · Token + Time Limit
  • Human Gate · (async approval)
💾 State + Output: Storage
  • S3 Cache · Chapter / Audio Ptr
  • S3 / DynamoDB · Final Output

Meu Playbook: Como Coloco um Loop em Produção

  1. 1

    1. Defina o trigger antes de qualquer prompt

    O que inicia o loop? Um cron? Um evento de S3? Uma chamada humana? O trigger define o contrato de entrada. Sem trigger claro, o loop não tem fronteira.

  2. 2

    2. Projete a topologia no quadro branco

    Quantos agentes? Em sequência ou paralelo? Quais ferramentas cada um tem acesso? Eu desenho isso antes de escrever uma linha de YAML. A topologia errada custa caro para refatorar.

  3. 3

    3. Escreva o verificador antes do agente

    O verificador é o que decide se a saída é boa o suficiente. Escrevo primeiro porque ele força clareza sobre o critério de sucesso, algo que muitos loops pulam e depois pagam com loops infinitos ou saídas silenciosamente erradas.

  4. 4

    4. Defina stop-rules explícitas: timeout, budget, tentativas

    Todo loop tem três stop-rules: um timeout de tempo (o loop não pode durar mais que X), um budget de tokens/custo (não posso gastar mais que Y por execução), e um máximo de tentativas (retry-with-attempts, não retry-forever). Sem as três, o loop é um risco operacional.

  5. 5

    5. Torne o estado externo e idempotente desde o início

    Estado em memória é inimigo da resiliência. Uso S3 como ponteiro de estado, o que já foi gerado, o que falta. Um re-run não recomeça do zero; ele lê o ponteiro e continua. Isso é mais importante que qualquer otimização de prompt.

  6. 6

    6. Adicione o human gate como stop-rule opcional, não como afterthought

    Para loops que produzem saídas com consequências (publicação, envio, deploy), projeto um ponto de aprovação humana assíncrona. Não é burocracia, é a diferença entre um loop autônomo e um loop irresponsável.

Quando Ainda Abro a IDE: Credibilidade Acima de Tudo

Seria desonesto dizer que nunca abro a IDE. Abro. E quando abro, é porque o problema exige.

Debugging gnarly de concorrência: quando um loop de agentes está produzindo resultados não-determinísticos que não consigo reproduzir no log, preciso do debugger de verdade. Breakpoints, inspeção de estado, stack trace completo. O agente não me dá isso.

Design greenfield de alta consequência: quando estou projetando um novo sistema financeiro do zero, onde uma decisão de topologia errada custa meses, sento com a IDE, com os diagramas e com a documentação. Não delego esse raciocínio estrutural para um agente sem supervisão densa.

Revisão de segurança em código crítico: autenticação, autorização, criptografia, tratamento de segredos. Leio o código gerado pelo agente linha a linha. A IDE é o ambiente onde faço essa revisão com seriedade, com diff claro, com histórico, com anotações.

A IDE não desapareceu da minha bancada. Ela mudou de papel: de ambiente padrão para instrumento de precisão. Uso quando a tarefa exige precisão cirúrgica, não como reflexo, mas como escolha deliberada.

Parei de me perguntar 'como escrevo esse código?' e comecei a me perguntar 'qual loop produz esse resultado de forma confiável?' Essa mudança de pergunta mudou tudo.
- Fernando F. Azevedo

Loops Que Deram Errado: Lições de Campo

  • Loop sem stop-rule de tempo: um gerador de capítulos sem timeout ficou rodando por 47 minutos em um capítulo corrompido, consumindo tokens e bloqueando o pipeline inteiro. A regra de parada não é opcional.
  • Verificador que sempre passa: um verifier que só checava se a saída era não-vazia deixou passar conteúdo alucinado por três execuções antes de eu perceber. Verificador sem critério real é pior que não ter verificador, dá falsa confiança.
  • Estado em memória em Lambda: um loop que guardava progresso em variável de instância Lambda funcionou perfeitamente em desenvolvimento e perdeu todo o estado no primeiro cold start em produção. S3 como ponteiro de estado não é over-engineering, é o mínimo.
  • Topologia de agente único para tarefa longa: tentei gerar um livro inteiro em uma única chamada de agente. Timeout, custo imprevisível e saída inconsistente. A solução foi o sub-loop por capítulo com cache. Granularidade de loop importa tanto quanto granularidade de função.
  • Retry sem circuit breaker: um loop de retry sem limite de tentativas em uma ferramenta externa com rate limit virou um ataque DDoS acidental contra minha própria API. Retry-with-attempts + exponential backoff + abort não são paranoia, são engenharia básica.
FA
Minha Leitura Honesta Desse Momento
Arquiteto de TI Especialista

Loop engineering não é o fim do software engineering, é uma camada acima dele. Os fundamentos ainda importam: idempotência, circuit breakers, observabilidade, segurança. O que mudou é onde você passa seu tempo de design. Se você ainda está otimizando prompts sem pensar no loop que os envolve, está resolvendo o problema errado. O gargalo se moveu. A pergunta agora é: você se moveu junto?

Veredicto: O Trabalho Mudou de Nível

paradigm shift, in production

Loop engineering é real, está em produção e está mudando o que significa ser um arquiteto de software. Não é sobre não usar a IDE, é sobre usá-la quando ela é o instrumento certo, não como reflexo. O meu trabalho hoje é projetar os sistemas que fazem os agentes funcionarem de forma confiável: triggers que disparam na hora certa, topologias que escalam, verificadores que realmente verificam, stop-rules que protegem o sistema de si mesmo. Os agentes escrevem o código. Eu projeto o que os faz funcionar. Essa divisão de trabalho, quando bem feita, é a coisa mais produtiva que já fiz em 16 anos de carreira.

Referências

Addy Osmani: Loop Engineering (June 2026)Boris Cherny: Writing the Loops that Drive ClaudeAWS Bedrock AgentCore: Web Search ToolAmazon EventBridge SchedulerAWS Lambda: Retry behavior and error handlingBuilding agentic AI applications: AWS BlogIdempotency in serverless architectures: AWS BlogAWS Lambda Powertools: Idempotency utility
#loop-engineering#ai-agents#aws-bedrock#eventbridge#prompt-engineering#serverless#agentic-ai#developer-productivity
Compartilhar:LinkedInWhatsAppXBaixar em Markdown
Fonte analisada: Loop Engineering (architecture study)
Próximo passo
Agentes de IA em produção na AWSComo eu desenho, oriento e audito agentes que vão ao ar, com os números e as fontes.Ver o IA BuilderTrilha Arquiteto de IA, gratuitaFundamentos, LLMs, RAG, tools, MCP e arquitetura na AWS, em aulas curtas e interativas.Começar a trilha

Continue lendo

IA & AgentesQuatro padrões de engenharia que separam multiagente de prompt chainO Google publicou os quatro padrões de engenharia que apareceram nos vencedores do AI Agents Challenge. Nenhum deles é sobre modelo: são interface de ferramenta, mensageria assíncrona, validação estrutural e roteamento barato antes da inferência. Reviso cada um com o que muda ao levá-lo para AgentCore, EventBridge e Bedrock, e onde o protótipo do desafio não sobrevive à produção.Ler IA & AgentesAWS FinOps Agent: Arquitetura, Mecanismos e Trade-offs em ProduçãoO AWS FinOps Agent, anunciado em preview no AWS Summit New York 2026, representa uma mudança de paradigma: de dashboards reativos para agentes autônomos que investigam anomalias de custo, geram recomendações e executam ações em sistemas externos como Jira e Slack. Neste artigo, disseço a arquitetura interna do agente, os modos de falha que ninguém menciona, e os trade-offs que qualquer equipe de engenharia financeira precisa entender antes de colocá-lo em produção.Ler IA & AgentesRAG Agêntico com OpenSearch Serverless: Anatomia de um PadrãoO padrão RAG agêntico com OpenSearch Serverless promete escala elástica e recuperação semântica sem gestão de infraestrutura, mas esconde armadilhas sérias de latência, custo e consistência que sistemas financeiros não podem ignorar. Neste artigo, desmonto a anatomia do padrão, mapeio quando ele funciona, quando falha e como configurá-lo com rigor de produção.Ler
AnteriorEC2 R8g e Graviton4: Análise Técnica para Workloads Memory-IntensivePróximoAWS WAF no AgentCore Gateway: Segurança de Produção para IA Agêntica
Gostou desta análise? Receba a próxima.

Deep dives de arquitetura, AWS, IA e mercado: direto no seu email. Grátis.

Sem spam · cancele quando quiser

Pergunte ao Fernando sobre isto

Uma resposta focada sobre este artigo, do meu assistente de IA, baseada no meu trabalho.

Participe da conversa

Entre para comentar

Confirme seu e-mail para participar, você também recebe a newsletter. Sem senha.

Neste artigo
A Virada: De Prompt Engineering para Loop EngineeringArquiteturaMeu Playbook: Como Coloco um Loop em ProduçãoQuando Ainda Abro a IDE: Credibilidade Acima de TudoAntipadrõesVeredicto: O Trabalho Mudou de NívelReferências