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

Psyche: O Media Server Que Mantém Seus Dados Seus

Eram 2 da manhã. Eu tava fuçando na minha pasta de anime tentando entender por que o media server não tinha pego os metadados de um episódio novo. Abri o banco de dados SQLite por curiosidade — só pra ver o que tinha lá dentro. Dava pra ler. Tudo. Cada título. Cada nota. Cada entrada do meu histórico. Texto puro, sem criptografia nenhuma, sentado ali no meu disco. Fechei o terminal e fiquei olhando pro teto. ...

abril 4, 2026 · 12 min de leitura · enrell