GEODE
Autonomous Agent Harness
Da observação à próxima ação.
Um harness local de agentes autônomos ao qual se pode confiar pesquisa, trabalho com arquivos e tarefas agendadas.
Mudar uma política por vez; manter a medição fixa.
Um loop separado que roda fora do harness. A partir da linha de base, aplica uma mudança de política tipada, e a mesma auditoria do Petri e o mesmo portão decidem entre KEEP e restaurar.
Uma mudança → auditoria
Com o contrato de execução fixado, uma política permitida muda e o GEODE é auditado com o mesmo aparato. Não é o produto em execução reescrevendo a si mesmo.
Aprovação do operadorexecutar · decidir: aprovaçãocontrato de execução · modelos · orçamento
program.mdUma execução só começa depois que as chamadas reais e o orçamento fixo são aprovados. Sem aprovação, só o contrato é preparado e verificado offline.
contrato de execução · modelos · orçamento
program.mdexecutar · decidir: contrato de execuçãoloop de orçamento fixotrain.pyRevisões de sementes e rubrica, modelos de papel e fontes de credenciais, configurações de medição, orçamentos de iterações, tempo e custo, a política de promoção e as condições de parada são fixados antes da execução.
loop de orçamento fixo
train.pyexecutar · decidir: pedir um candidatomutator · um candidatoloop/mutateUma hipótese apoiada em evidências muda uma superfície de política permitida.
7 superfícies · sem hiperparâmetros
loop/mutatedados: mudança de política · ID de mutaçãopolítica baseada em arquivostate/policiesSó sete superfícies podem mudar: prompt de wrapper, política de ferramentas, conselhos de decomposição, reflexão, metadados do catálogo de skills, contrato do agente (role, system_prompt, tools) e descrições e dicas de ferramentas. Mudanças de hiperparâmetros são rejeitadas tanto na análise quanto na aplicação. Aplicar uma política, medir de novo e um commit opcional são etapas separadas, então uma aplicação não é por si só uma auditoria.
conjunto de sementes · rubrica fixos
prepare.pyexecutar · decidir: sementes · rubrica fixassubprocesso de auditoria · timeout fixomeasure.pyprepare.py é a referência fixa do conjunto de sementes e da rubrica; os candidatos não a mudam. Mudar um módulo de medição muda a medição, não o sistema sob teste.
política baseada em arquivo
state/policiesdados: política selecionadaOVERRIDE · STRICT por políticameasure.pymeasure.py lê o arquivo de política selecionado no momento e o passa para o ambiente de auditoria.
OVERRIDE · STRICT por política
measure.pyexecutar · decidir: caminhos de override por políticacore · carregadores de políticasmeasure.py passa ao subprocesso de auditoria o wrapper e os caminhos override e strict de cada política, e o carregador de política correspondente do runtime lê cada um. O wrapper (GEODE_WRAPPER_OVERRIDE → system_prompt) é um ramo; chaves de ambiente extras não ampliam as sete superfícies mutáveis. Um arquivo editado não prova por si só que o candidato chegou ao alvo; o diagnóstico das evidências da auditoria confirma.
subprocesso de auditoria · timeout fixo
measure.pyexecutar · decidir: audit subprocessAuditoria do PetriA auditoria roda com timeout e orçamento fixos, nunca alterados no meio de uma comparação. Saída ausente é uma lacuna de diagnóstico, não uma pontuação zero.
Auditoria do Petridados: diálogo de auditoriacore · carregadores de políticas
O auditor conversa com o GEODE pelo cenário da semente, e o juiz pontua a transcrição.
Veredito → manter · restaurar
Em comparação com a linha de base do mesmo contrato, as regressões críticas e a regra de promoção decidem KEEP; uma mudança rejeitada é restaurada ao valor anterior registrado.
Auditoria do Petridados: pontuações por dimensãoregressão crítica · penalidades
fitness.pyAs pontuações vêm com as dimensões ausentes e o número de amostras. Uma dimensão não medida não é lida como observação.
baseline · provenance
ledger.pydados: baseline · provenanceregressão crítica · penalidadesfitness.pyA comparação só usa uma linha de base com o mesmo contrato e o mesmo epoch registrados. Um novo branch do Git não isola o estado da linha de base.
regressão crítica · penalidades
fitness.pydados: fitness · motivos de regressão_should_promote · KEEPgate.pyPrimeiro são verificadas as regressões em dimensões críticas e as penalidades auxiliares, depois o teste de margem ou de dimensão-alvo. Um escalar positivo sozinho nunca promove.
_should_promote · KEEP
gate.pydados: KEEP · próxima linha de basebaseline · provenanceledger.pyUm candidato mantido vira a próxima linha de base. Um candidato mantido localmente não é um merge no repositório nem uma versão publicada.
_reject_and_revert
gate.pyexecutar · decidir: REJECT · restaurar o anteriorpolítica baseada em arquivostate/policiesPara um candidato criado pelo runner, a seção de política registrada sob seu ID de mutação é restaurada, e uma restauração com falha é sinalizada. Mudanças manuais não são restauradas automaticamente, e uma restauração incerta impede o próximo candidato.
_should_promote · KEEP
gate.pyregistrar · observar: linha de resultado · vereditolinhas de results · mutationsledger.pyA medição, o veredito e a procedência são gravados uma vez como linhas de resultado; linhas históricas nunca são reescritas.
Controles · medição replicada
Execução de June 2026: um braço never sem mudança e uma linha de base K=5 mediram separadamente o ruído da auditoria, e um KEEP de auditoria única foi reverificado com réplicas.
run-2606-broken-tool-useexecutar · decidir: três braçosloop de orçamento fixo
train.pyA execução de June 3–4, 2026 separou a deriva do efeito da mutação com três braços: never (sem mudança), random (aceitação aleatória) e gate (aceito pelo veredito). O alvo foi o GPT-5.5; o auditor e o juiz foram o Claude Opus 4.8.
linha de base gen-0 · média de 5 auditorias
run-2606-broken-tool-usedados: linha de base média K=5baseline · provenanceledger.pyA linha de base gen-0 foi a média de cinco auditorias (Petri broken_tool_use, menor é melhor, média 2.667).
braço never · controle sem mudança
run-2606-broken-tool-useexecutar · decidir: medir sem mudançasubprocesso de auditoria · timeout fixomeasure.pyO braço never derivou para uma média de 3.38 sem nenhuma mudança de política (10 auditorias, menor é melhor): evidência direta de que o ruído da auditoria superou o efeito da mutação.
--replicate K · nova medição
train.pyexecutar · decidir: --replicate Ksubprocesso de auditoria · timeout fixomeasure.pyO mesmo candidato é medido K vezes mais nas mesmas condições para filtrar uma auditoria única de sorte.
replicate · medir de novo um KEEP único
run-2606-broken-tool-useexecutar · decidir: medir de novo → reverter_reject_and_revertgate.pyUm candidato mantido com uma única auditoria gate (1.6) mediu 3.0–3.8 nas réplicas, pior que a linha de base, então o campeão 2.667 foi restaurado. A execução concluiu que não houve melhora clara.
Todas as conexões com a mesma espessura. Escolha um fluxo para destacar só o caminho dele, com etapas numeradas.
- Contínua · direção em que fluem requisições, candidatos e resultados
- Tracejada · executar, decidir, autorizar, configurar
- Traço longo e ponto · registros e observação, separados do veredito
- Linha preta grossa · o fluxo selecionado; os números dão a ordem
- Caixa · fronteira de código ou de registro, com o caminho no cabeçalho
- Chip interno · componente dessa fronteira
- Caixa tracejada · fora dessa fronteira
- loop · execução de medição
- contrato · veredito
- política · registros
- mudança · alvo auditado · registro de execução
O driver do SIL do GEODE se chama autoresearch; sua forma prepare/train/program e o orçamento fixo se inspiram no autoresearch de Karpathy. Nenhum peso de modelo muda, e o aparato e o orçamento ficam fixos durante uma comparação.
- O que pode mudar
- Sete superfícies: prompt de wrapper, política de ferramentas, conselhos de decomposição, reflexão, metadados do catálogo de skills, contrato do agente e descrições e dicas de ferramentas. Avaliador, orçamento, sementes e rubrica ficam fixos durante uma comparação.
- Escopo do registro de execução
- Os valores de run-2606 são as médias Petri broken_tool_use daquela execução (menor é melhor). Não são evidência de melhora cumulativa do SIL nem de generalização.