GEODE
Autonomous Agent Harness
Fra observation til næste handling.
En lokal harness til autonome agenter, som research, filarbejde og planlagte opgaver kan overdrages til.
Ændr én policy ad gangen; hold målingen fast.
En separat løkke, der kører uden for harnessen. Fra baseline anvender den én typet policyændring, og samme Petri-audit og gate afgør mellem KEEP og gendannelse.
Én ændring → audit
Med kørselskontrakten fastlåst ændres én tilladt policy, og GEODE auditeres med samme apparat. Det er ikke det kørende produkt, der omskriver sig selv.
Operatørgodkendelsekøre · afgøre: godkendelsekørselskontrakt · modeller · budget
program.mdEn kørsel starter først, når live-kald og det faste budget er godkendt. Uden godkendelse forberedes kun kontrakten, og den kontrolleres offline.
kørselskontrakt · modeller · budget
program.mdkøre · afgøre: kørselskontraktløkke med fast budgettrain.pyRevisioner af seeds og bedømmelsesskema, rollemodeller og kilder til legitimationsoplysninger, måleindstillinger, budgetter for iterationer, tid og omkostninger, forfremmelsespolicyen og stopbetingelserne fastlåses før kørslen.
løkke med fast budget
train.pykøre · afgøre: bed om én kandidatmutator · én kandidatloop/mutateÉn hypotese med belæg ændrer én tilladt policyflade.
7 flader · ingen hyperparametre
loop/mutatedata: policyændring · mutations-idfilbaseret policystate/policiesKun syv flader må ændres: wrapper-prompt, værktøjspolicy, råd om opdeling, refleksion, metadata i skill-kataloget, agentkontrakt (role, system_prompt, tools) samt værktøjsbeskrivelser og hints. Ændringer af hyperparametre afvises både ved parsing og anvendelse. Anvendelse af en policy, genmåling og et valgfrit commit er separate trin, så en anvendelse er ikke i sig selv en audit.
seed-pulje · bedømmelsesskema fastlåst
prepare.pykøre · afgøre: seeds · bedømmelsesskema fastlåstaudit-underproces · fast timeoutmeasure.pyprepare.py er den faste reference for seed-puljen og bedømmelsesskemaet; kandidater ændrer den ikke. At ændre et målemodul ændrer målingen, ikke det system, der testes.
filbaseret policy
state/policiesdata: valgt policyOVERRIDE pr. policy · STRICTmeasure.pymeasure.py læser den aktuelt valgte policyfil og sender den ind i auditmiljøet.
OVERRIDE pr. policy · STRICT
measure.pykøre · afgøre: override-stier pr. policycore · policy-loaderemeasure.py sender wrapperen samt override- og strict-stier pr. policy til audit-underprocessen, og runtimens tilsvarende policy-loader læser hver af dem. Wrapperen (GEODE_WRAPPER_OVERRIDE → system_prompt) er én gren; ekstra miljønøgler udvider ikke de syv ændrbare flader. En redigeret fil alene beviser ikke, at kandidaten nåede target; diagnostikken i auditbelægget bekræfter det.
audit-underproces · fast timeout
measure.pykøre · afgøre: audit subprocessPetri-auditAuditen kører med fast timeout og budget, som aldrig ændres midt i en sammenligning. Manglende output er et hul i diagnostikken, ikke en score på nul.
Petri-auditdata: auditdialogcore · policy-loadere
Auditor taler med GEODE gennem seed-scenariet, og judge scorer transskriptionen.
Dom → behold · gendan
Sammenlignet med baselinen under samme kontrakt afgør kritiske regressioner og forfremmelsesreglen KEEP; en afvist ændring gendannes til sin registrerede tidligere værdi.
Petri-auditdata: dimensionsscorerkritisk regression · fradrag
fitness.pyScorer leveres med manglende dimensioner og antal prøver. En dimension, der ikke er målt, læses ikke som en observation.
baseline · provenance
ledger.pydata: baseline · provenancekritisk regression · fradragfitness.pySammenligning bruger kun en baseline med samme registrerede kontrakt og epoch. En ny Git-gren isolerer ikke baseline-tilstanden.
kritisk regression · fradrag
fitness.pydata: fitness · regressionsårsager_should_promote · KEEPgate.pyRegressioner i kritiske dimensioner og hjælpefradrag kontrolleres først, derefter margin- eller måldimensionstesten. En positiv skalar alene giver aldrig forfremmelse.
_should_promote · KEEP
gate.pydata: KEEP · næste baselinebaseline · provenanceledger.pyEn beholdt kandidat bliver næste baseline. En kandidat, der beholdes lokalt, er ikke en merge i repositoryet eller en release.
_reject_and_revert
gate.pykøre · afgøre: REJECT · gendan tidligerefilbaseret policystate/policiesFor en kandidat lavet af runneren gendannes det policyafsnit, der er registreret under dens mutations-id, og en mislykket gendannelse markeres. Manuelle ændringer gendannes ikke automatisk, og en usikker gendannelse standser den næste kandidat.
_should_promote · KEEP
gate.pylogge · observere: resultat · domsrækkerækker i results · mutationsledger.pyMåling, dom og oprindelse skrives én gang som resultatrækker; historiske rækker omskrives aldrig.
Kontroller · gentagen måling
Kørslen i juni 2026: en never-arm uden ændring og en K=5-baseline målte auditstøj separat, og en KEEP fra en enkelt audit blev efterprøvet med gentagelser.
run-2606-broken-tool-usekøre · afgøre: tre armeløkke med fast budget
train.pyKørslen 3.–4. juni 2026 adskilte drift fra mutationseffekt med tre arme: never (ingen ændring), random (tilfældig accept) og gate (accepteret af dommen). Target var GPT-5.5; auditor og judge var Claude Opus 4.8.
gen-0-baseline · gennemsnit af 5 audits
run-2606-broken-tool-usedata: baseline som gennemsnit af K=5baseline · provenanceledger.pyGen-0-baselinen var gennemsnittet af fem audits (Petri broken_tool_use, lavere er bedre, gennemsnit 2.667).
never-arm · kontrol uden ændring
run-2606-broken-tool-usekøre · afgøre: mål uden ændringaudit-underproces · fast timeoutmeasure.pyNever-armen drev til et gennemsnit på 3.38 uden nogen policyændring (10 audits, lavere er bedre): direkte belæg for, at auditstøjen oversteg mutationseffekten.
--replicate K · genmåling
train.pykøre · afgøre: --replicate Kaudit-underproces · fast timeoutmeasure.pyDen samme kandidat måles K gange mere under samme betingelser for at frasortere en heldig enkelt audit.
replicate · genmål en enkelt KEEP
run-2606-broken-tool-usekøre · afgøre: genmåling → tilbagerulning_reject_and_revertgate.pyEn kandidat, der blev beholdt på én enkelt gate-audit (1.6), målte 3.0–3.8 ved gentagelser, dårligere end baseline, så championen 2.667 blev gendannet. Kørslen konkluderede ingen klar forbedring.
Alle forbindelser med samme tykkelse. Vælg et flow for kun at fremhæve dets vej med nummererede trin.
- Fuldt optrukket · den retning, forespørgsler, kandidater og resultater flyder
- Stiplet · køre, afgøre, autorisere, konfigurere
- Lang streg-prik · logs og observation, adskilt fra dommen
- Kraftig sort linje · det valgte flow; tal angiver rækkefølgen
- Boks · en kode- eller loggrænse med stien i overskriften
- Indre chip · en komponent inden for grænsen
- Stiplet boks · uden for grænsen
- løkke · målekørsel
- kontrakt · dom
- policy · logs
- ændring · auditeret target · kørselslog
GEODE's SIL-driver hedder autoresearch; dens prepare/train/program-form og faste budget er inspireret af Karpathys autoresearch. Ingen modelvægte ændres, og apparat og budget forbliver faste under en sammenligning.
- Hvad der må ændres
- Syv flader: wrapper-prompt, værktøjspolicy, råd om opdeling, refleksion, metadata i skill-kataloget, agentkontrakt samt værktøjsbeskrivelser og hints. Evaluator, budget, seeds og bedømmelsesskema forbliver faste under en sammenligning.
- Kørselslogens omfang
- Værdierne for run-2606 er den kørsels gennemsnit for Petri broken_tool_use (lavere er bedre). De er ikke belæg for kumulativ forbedring af SIL eller generalisering.