GEODE
Autonomous Agent Harness
Van observatie naar de volgende actie.
Een lokale harness voor autonome agents, waaraan onderzoek, bestandswerk en geplande taken kunnen worden overgedragen.
Acceptatie van kandidaten en releasebevoegdheid zijn aparte oordelen.
Crucible is een experimentkernel, los van de zoektocht naar policy’s. Een kandidaatcommit wordt gevalideerd tegen de toegestane oppervlakken en een bevroren contract, gepaarde taken worden geaggregeerd in een aparte meetcheckout, en de uitkomst is KEEP, REJECT of INVALID.
Train-oordeel
Eén kandidaat binnen het toegestane oppervlak wordt in een geïsoleerde checkout onder een vast contract gemeten, en vooraf geregistreerde regels beslissen over KEEP, REJECT of INVALID.
propose → preflight
search/supervisor.pyuitvoeren · beslissen: om een kandidaat vragensearch/producersDe zoeksupervisor vraagt een producent om een kandidaat. De kandidaat van r14 was een eerdere kandidaat (r13) die de replay producer opnieuw toepaste, geen nieuwe door een LLM gegenereerde.
search/producersgegevens: één kandidaatcommitpropose → preflight
search/supervisor.pyEen producent levert één kandidaatcommit binnen de toegestane paden.
propose → preflight
search/supervisor.pyuitvoeren · beslissen: toegestaan oppervlak · diff-controletoegestaan oppervlak · candidate diffcontract.pyDe candidate diff moet binnen het door het contract toegestane oppervlak blijven, en de frozen evaluator wordt geverifieerd. In r14 en r35 was het toegestane doel één bestand, tau2_agent_policy.md; core en de Crucible-implementatie lagen vast als evaluatorpad.
evaluate → decide → record
search/supervisor.pyuitvoeren · beslissen: geïsoleerde checkoutgeïsoleerd van de producentmeasurement checkoutDe kandidaat wordt gecontroleerd in een meetcheckout die gescheiden is van de producent.
geïsoleerd van de producent
measurement checkoutuitvoeren · beslissen: run onder een vast contracttau2-run · receiptassays/Baseline en kandidaat draaien met hetzelfde contract, dezelfde seed en dezelfde taken.
tau2-run · receipt
assays/gegevens: dialoog actor · gebruikertau2-omgevingDe GEODE-agent (actor) praat in de tau2-taakomgeving met de gesimuleerde gebruiker die van de evaluator is.
tau2-run · receipt
assays/gegevens: modelaanroepenModellen voor actor · userIn r14 en r35 waren zowel de actor als de gesimuleerde gebruiker gpt-5.4/high (abonnement).
taakverifier
assays/gegevens: paired evidenceaggregatie paired · task · familypromotion.pyDe resultaten van de taakverifier worden bewaard als paren van baseline en kandidaat.
frozen evaluator · vooraf geregistreerd
contract.pyuitvoeren · beslissen: vooraf geregistreerde aggregatieaggregatie paired · task · familypromotion.pyGepaarde resultaten worden geaggregeerd per task en vooraf geregistreerde family, waarbij budget, coverage, infrastructuur en veiligheidsvoorwaarden apart worden gecontroleerd.
KEEP · REJECT · INVALID
promotion.pyuitvoeren · beslissen: KEEP · head verschuiftsearch/* headrefs/crucibleBij KEEP wordt de volgende head van refs/crucible/search/* de kandidaat. De promotion_authority van een train-oordeel is none.
Afwijzing · ongeldig · feedback
REJECT en INVALID houden de head, en de volgende kandidaat krijgt alleen foutcodes en vaste ID’s van train-taken. INVALID is geen score van nul.
taakverifier
assays/gegevens: paired evidenceaggregatie paired · task · familypromotion.pyDe resultaten van de taakverifier worden bewaard als paren van baseline en kandidaat.
frozen evaluator · vooraf geregistreerd
contract.pyuitvoeren · beslissen: vooraf geregistreerde aggregatieaggregatie paired · task · familypromotion.pyGepaarde resultaten worden geaggregeerd per task en vooraf geregistreerde family, waarbij budget, coverage, infrastructuur en veiligheidsvoorwaarden apart worden gecontroleerd.
KEEP · REJECT · INVALID
promotion.pygegevens: REJECT · INVALIDfoutcodes · ID’s van train-takenattempt/feedback.jsonBij afwijzing of ongeldigheid blijft de vorige head staan, en de kandidaat en zijn vastleggingen worden bewaard. Het gemiddelde van een INVALID is null, niet nul.
foutcodes · ID’s van train-taken
attempt/feedback.jsongegevens: foutcodes · taak-ID’ssearch/producersFeedback aan de volgende kandidaat is beperkt tot foutcodes en vaste ID’s van train-taken; trajecten of antwoorden van de evaluator worden niet doorgegeven.
Sealed geschiktheid · aparte bevoegdheid
Een train-KEEP verplaatst alleen de zoek-head. Sealed geschiktheid komt niet verder dan de eligible ref; productrelease en uitrol zijn aparte bevoegdheden buiten Crucible.
evaluate → decide → record
search/supervisor.pygegevens: record · ref receipttrain bundle · herberekende KEEPattestation/bundle.pyEen train bundle houdt alleen stand als contract, bewijs voor baseline en kandidaat, de herberekende KEEP, de herkomstketen van het voorstel, het supervisorlog en de receipt van de toegepaste ref allemaal op elkaar aansluiten. Het is geen andere naam voor verbetering.
train bundle · herberekende KEEP
attestation/bundle.pyuitvoeren · beslissen: alleen train bundle · één keerdisjoint test pack · één keer gebruiktattestation/sealed.pySealed evaluatie gebruikt één keer een test pack dat disjunct is van train, met nul herhalingen voor infrastructuur.
ELIGIBLE · release_authority none
attestation/sealed.pyuitvoeren · beslissen: alleen eligible refeligible/*refs/crucibleZelfs ELIGIBLE schrijft alleen refs/crucible/eligible/*, en release_authority ligt vast op none.
Openbare vastleggingen · r14 · r35
r14 was train KEEP en daarna sealed REJECT; r35 (July 13, 2026) was INVALID door onvolledige coverage en vervuiling van de infrastructuur (0 gepaarde rijen, gemiddelde null), met de head ongewijzigd.
KEEP · REJECT · INVALID
promotion.pygegevens: openbare verdict.jsongeode-eval-artifactsDe openbare artefacten zijn genormaliseerde vastleggingen, vastgezet op 23e3428. De vooraf geregistreerde hash van de train-configuratie van r14 verschilt van de bytes van de openbare configuratie, dus de volledige oorspronkelijke keten is niet opnieuw gecertificeerd.
attestation/sealed.pygegevens: sealed decision.jsonr14 · train KEEP → sealed REJECT
geode-eval-artifactsr14: KEEP op telecom train, 6 taken × 1 poging (6 gepaarde rijen, geen promotiebevoegdheid), daarna een apart sealed oordeel REJECT (geen releasebevoegdheid).
Alle verbindingen even zwaar. Kies een stroom om alleen het pad daarvan te markeren, met genummerde stappen.
- Doorgetrokken · de richting waarin verzoeken, kandidaten en resultaten stromen
- Gestreept · uitvoeren, beslissen, autoriseren, configureren
- Dikke zwarte lijn · de gekozen stroom; nummers geven de volgorde
- Vak · een code- of vastleggingsgrens, met het pad in de kop
- Binnenchip · een component in die grens
- Gestreept vak · buiten die grens
- zoeksupervisor
- contract · oordeel · attestatie
- refs · vastleggingen
- producenten · uitvoering
Crucible is een kernel los van SIL; de twee zoektochten vormen geen pijplijn die elkaars kandidaten promoveert. Het vak voor de productrelease heeft geen inkomende verbinding.
- Drie bevoegdheden
- Een train-KEEP verplaatst de zoek-head, een sealed ELIGIBLE legt een eligible ref vast, en de productrelease is een aparte beslissing buiten Crucible. Een eerder oordeel geeft nooit een latere bevoegdheid.
- Null is niet nul
- r35 plande 9 taken × 3 pogingen (27 rijen per arm), maar had 0 vergelijkbare paren, dus het gemiddelde en de verbetering zijn null. Het zijn geen 27 mislukte taken en geen slagingspercentage van 0%.