Eu Apaguei o Framework de Agentes: Como o Matrix Virou um Kernel

O Matrix é um kernel experimental em Rust para compor componentes de software duradouros entre processos e máquinas. Um componente pode ser um adaptador de modelo, uma ferramenta, um serviço de memória, uma interface ou lógica comum da aplicação. O Matrix dá identidade e geração a cada instância em execução, resolve suas dependências declaradas, controla quais componentes podem chamá-la e acompanha os recursos que ela adquire. Imagine um consumidor recebendo um stream de provider. Enquanto o stream está aberto, o processo do provider cai e um substituto entra com o mesmo nome lógico. A maioria dos sistemas de plugins consegue dizer que provider existe de novo. O Matrix se preocupa com a pergunta mais difícil: este chunk ainda pertence à instância exata que foi autorizada quando a chamada começou? ...

setembro 10, 2026 · 10 min de leitura · enrell

Processo zombie e symlink cíclico: um bug interessante no NAVI

Estava terminando o release 0.3.8 do NAVI quando notei que tinha um processo navi rodando com CPU alta. Nada de outro mundo — processo headless que não terminou, provavelmente alguma task presa. Fui investigar. O diagnóstico btop mostrou duas threads em ~70% de CPU cada. ps confirmou: 1 2 3 4 5 $ ps -p 425090 -L PID LWP TTY STAT TIME COMMAND 425090 425090 ? S 0:00 navi 425090 425124 ? R 10:28 tokio-rt-worker 425090 425125 ? R 10:27 tokio-rt-worker Duas tokio-rt-worker threads com mais de 10 horas de CPU acumulada. A main thread estava dormindo (S). Essas duas estavam correndo (R) sem parar. ...

julho 24, 2026 · 4 min de leitura · enrell

rustquty 0.4.3: Quality Gates Confiáveis Precisam de Métricas Confiáveis

As primeiras versões públicas do rustquty saíram com uma ideia que eu ainda gosto bastante: quality gates locais para projetos Rust. Roda um comando. Coleta métricas. Compara contra um baseline ou thresholds absolutos. Falha se a qualidade piorou. Esse modelo continua fazendo sentido pra mim. Mas essa semana eu encontrei aquela parte que todo autor de ferramenta encontra uma hora: o momento em que a ferramenta diz algo tão obviamente errado que você para de confiar no relatório inteiro. ...

junho 28, 2026 · 6 min de leitura · enrell

rustquty: O Scanner de Qualidade Local pra Projetos Rust

Tava no meio de um refactor no animedb, um projeto Rust que eu mantenho. Rodei cargo fmt --check, rodei cargo clippy, rodei cargo test. Tudo verde. Aí subi o PR. Depois de uns dias, olhando o diff, percebi que uma função tinha inchado pra mais de 100 linhas. Outra tava com nesting de 8 níveis. Ninguém comentou. O CI passou. Porque o CI não olha pra isso. Eu já tinha visto isso acontecer antes. Qualidade não some de uma hora pra outra. Ela vai degradando devagar, uma função por vez, até o dia que você olha pro módulo e pensa “como que isso virou uma bagunça?” ...

junho 2, 2026 · 6 min de leitura · enrell

Adicionei voice-to-text ao Noctalia Shell para parar de digitar

Era uma tarde de quarta-feira. Eu estava escrevendo documentação para um dos meus projetos e minhas mãos começaram a cansar. Não por causa do código — por causa da prosa. Parágrafo atrás de parágrafo explicando coisas em português, enquanto meus dedos imploravam por misericórdia. Pensei: por que eu ainda estou digitando tudo isso? Eu tenho um microfone. Tenho um compositor Wayland. Tenho um shell que eu mesmo uso e customizo. Mesmo assim, toda vez que eu queria usar voice-to-text, precisava abrir um browser, entrar em algum cloud service, copiar o texto e colar de volta. Ou instalar algum app em Electron que consome 400 MB de RAM só para ficar parado em background. ...

maio 29, 2026 · 10 min de leitura · enrell