v0.36.2 — a replicação segurou, e a decomposição contradisse nossa própria previsão
O resultado do SWE-bench replicou fora da amostra — e uma quarta rodada decompôs o ganho por componente, contradizendo a previsão que nós mesmos tínhamos registrado.
A replicação
O +15,8% da rodada anterior repousava numa varredura de 3 a 0 sobre três pares informativos. O pré-registro deu a isso uma chance em três de ser só sorte, com a retratação já comprometida. A rodada 3 testou em 41 instâncias django cujos resultados nunca tínhamos visto, sem mudar mais nada.
O efeito reapareceu:
| rodada | fatia | baseline | + Chimera | Δ pareado | IC 95% | |
|---|---|---|---|---|---|---|
| 3 (replicação) | 41 inéditas | 34,1% | 43,9% | +9,8% | [−3,5%, +16,7%] | não significativo |
| pooled (secundário) | 60 | 36,7% | 48,3% | +11,7% | [+0,8%, +16,4%] | significativo |
Dentro da faixa de +5 a +20 que havia sido registrada, e numa fatia que se provou mais difícil que a anterior. Somando as duas rodadas, os pares discordantes ficam 9 a favor contra 2 (p ≈ 2,6% sob a hipótese nula).
A decomposição — e a retratação
Uma quarta rodada restaurou o braço do meio (andaime puro, sem o diff-gate) nas mesmas 41 instâncias, de modo que cada braço difere do seguinte por exatamente um componente:
| braço | resolvidas | taxa | precisão ao editar |
|---|---|---|---|
| baseline | 14/41 | 34,1% | 50% |
| + andaime | 16/41 | 39,0% | 59% |
| + andaime e diff-gate | 18/41 | 43,9% | 67% |
Os dois componentes contribuem em metades aproximadamente iguais — andaime +4,9%, gate mais +4,9%, nenhum significativo sozinho.
Isso contradiz a previsão que registramos (de que o andaime carregaria a maior parte) e retira uma leitura anterior de que o --require-diff não era o que produzia o ganho — conclusão tirada de uma fatia estreita demais da evidência. A retratação está no RESULTS.md, com o mesmo destaque da afirmação original.
O padrão limpo: os três braços editam na mesma frequência (27-28 patches de 41). O que sobe é a precisão. Não se vence agindo mais; vence-se acertando mais.
Leia com estas ressalvas
- 48,3% não é um score de SWE-bench Verified. É uma fatia deliberadamente fácil, de um único repositório, escolhida para que um A/B pareado tenha espaço de medição. Um score de verdade exige as 500 instâncias.
- O primário fora da amostra não é significativo. O número significativo é o pooled, pré-registrado como secundário justamente por misturar dados vistos com inéditos — e por isso o snapshot do app carrega o número fora da amostra, não o pooled.
- Tudo graduado exclusivamente pelo harness oficial
swebench4.1.0 em Docker. Nunca auto-reportado.
Também nesta versão
A decomposição chega ao app desktop, não só ao repositório. O modelo da API é estrito, então o campo novo teria sido descartado em silêncio — os números ficariam no JSON dentro do wheel e nunca apareceriam na interface.
Nada muda no comportamento
Nenhuma mudança no agente. O que muda é o que os números dizem e o quanto se pode rastreá-los.
pip install --upgrade chimera-agent
🤖 Generated with Claude Code