Geodi, oficjalna pikselowa postać GEODE
Powrót do sali

GEODE

Autonomous Agent Harness

Od obserwacji do następnego działania.

Lokalny harness autonomicznego agenta, któremu można powierzyć badania, pracę na plikach i zadania zaplanowane.

2026.02.21 — present

Projektowanie, ocena, weryfikacja: autor · implementacja: Claude · przegląd: Codex

  • CLIOpublikowane · PyPI
  • Serwer MCPZaimplementowane

Akceptacja kandydata i uprawnienie do wydania to osobne rozstrzygnięcia.

Crucible to jądro eksperymentalne oddzielone od przeszukiwania polityk. Commit kandydujący jest walidowany względem dozwolonych powierzchni i zamrożonego kontraktu, sparowane zadania są agregowane w osobnym checkoucie pomiarowym, a wynikiem jest KEEP, REJECT lub INVALID.

Mapa Crucible · narysowana na podstawie przypiętego commitu 9e2c041 i publicznych artefaktów 23e3428
Mapa Crucible w GEODEJądro eksperymentalne, które traktuje akceptację kandydata, zapieczętowaną kwalifikację i wydanie produktu jako osobne uprawnienia. Supervisor pobiera od producenta jeden commit kandydujący, sprawdza go względem dozwolonej powierzchni i zamrożonego ewaluatora, a zadania tau2 uruchamia w odizolowanym checkoucie pomiarowym. promotion.py agreguje sparowane wyniki według wstępnie zarejestrowanych zadań i rodzin w KEEP, REJECT lub INVALID; KEEP przesuwa tylko head przeszukiwania. Zapieczętowana ewaluacja ocenia train bundle na jednorazowym, rozłącznym test packu; nawet ELIGIBLE dociera tylko do eligible ref, bez uprawnienia do wydania.Modele aktora · użytkownikar14 · r35: gpt-5.4/highŚrodowisko tau2zadania · symulowany użytkownikWydanie produktu GEODEbrak połączenia · osobne uprawnieniesearch/producerspolecenie producenta · konfigurowanereplay producersearch/supervisor.pypropose → preflightevaluate → decide → recordcontract.pydozwolona powierzchnia · diff kandydatazamrożony ewaluator · wstępnie zarejestrowanyattempt/feedback.jsonkody błędów · ID zadań trainmeasurement checkoutodizolowany od producentaassays/przebieg tau2 · receiptweryfikator zadańpromotion.pyagregacja sparowana · zadanie · rodzinaKEEP · REJECT · INVALIDattestation/bundle.pytrain bundle · przeliczony KEEPattestation/sealed.pyrozłączny test pack · użyty razELIGIBLE · release_authority nonerefs/cruciblesearch/* headeligible/*geode-eval-artifactsr14 · train KEEP → sealed REJECTr35 · INVALID · 0 par · nullevolve/cruciblezewnętrzne jądro eksperymentalne · oddzielne od SILprzeszukiwanie · werdykt trainattestation · sealed1 prośba o kandydata · propose → preflight → search/producers12 jeden commit kandydujący · search/producers → propose → preflight23 dozwolona powierzchnia · kontrola diffu · propose → preflight → dozwolona powierzchnia · diff kandydata34odizolowany checkout5przebieg na stałym kontrakcie6dialog aktora · użytkownika7wywołania modelu8paired evidence9wstępnie zarejestrowana agregacja10KEEP · head się przesuwa1paired evidence2wstępnie zarejestrowana agregacja3REJECT · INVALID4kody błędów · ID zadań1record · ref receipt2 tylko train bundle · raz · train bundle · przeliczony KEEP → rozłączny test pack · użyty raz23 tylko eligible ref · ELIGIBLE · release_authority none → eligible/*31publiczny verdict.json2sealed decision.json

Werdykt train

Jeden kandydat w obrębie dozwolonej powierzchni jest mierzony na stałym kontrakcie w odizolowanym checkoucie, a wstępnie zarejestrowane reguły rozstrzygają o KEEP, REJECT lub INVALID.

  1. propose → preflightsearch/supervisor.pyuruchomienie · rozstrzygnięcie: prośba o kandydatasearch/producers

    Supervisor przeszukiwania prosi producenta o kandydata. Kandydat r14 był wcześniejszym kandydatem (r13) ponownie zastosowanym przez producenta replay, a nie nowym wygenerowanym przez LLM.

  2. search/producersdane: jeden commit kandydującypropose → preflightsearch/supervisor.py

    Producent zwraca pojedynczy commit kandydujący w obrębie dozwolonych ścieżek.

  3. propose → preflightsearch/supervisor.pyuruchomienie · rozstrzygnięcie: dozwolona powierzchnia · kontrola diffudozwolona powierzchnia · diff kandydatacontract.py

    Diff kandydata musi mieścić się w dozwolonej przez kontrakt powierzchni, a zamrożony ewaluator jest weryfikowany. W r14 i r35 dozwolonym celem był jeden plik, tau2_agent_policy.md; core i implementacja Crucible były zablokowane jako ścieżka ewaluatora.

  4. evaluate → decide → recordsearch/supervisor.pyuruchomienie · rozstrzygnięcie: odizolowany checkoutodizolowany od producentameasurement checkout

    Kandydat jest sprawdzany w checkoucie pomiarowym oddzielonym od producenta.

  5. odizolowany od producentameasurement checkouturuchomienie · rozstrzygnięcie: przebieg na stałym kontrakcieprzebieg tau2 · receiptassays/

    Baseline i kandydat działają z tym samym kontraktem, seedem i zadaniami.

  6. przebieg tau2 · receiptassays/dane: dialog aktora · użytkownikaŚrodowisko tau2

    Agent GEODE (aktor) rozmawia w środowisku zadań tau2 z symulowanym użytkownikiem należącym do ewaluatora.

  7. przebieg tau2 · receiptassays/dane: wywołania modeluModele aktora · użytkownika

    W r14 i r35 zarówno aktor, jak i symulowany użytkownik działali na gpt-5.4/high (subskrypcja).

  8. weryfikator zadańassays/dane: paired evidenceagregacja sparowana · zadanie · rodzinapromotion.py

    Wyniki weryfikatora zadań są zachowywane jako pary baseline–kandydat.

  9. zamrożony ewaluator · wstępnie zarejestrowanycontract.pyuruchomienie · rozstrzygnięcie: wstępnie zarejestrowana agregacjaagregacja sparowana · zadanie · rodzinapromotion.py

    Sparowane wyniki są agregowane według zadań i wstępnie zarejestrowanych rodzin, a warunki budżetu, pokrycia, infrastruktury i bezpieczeństwa sprawdzane są osobno.

  10. KEEP · REJECT · INVALIDpromotion.pyuruchomienie · rozstrzygnięcie: KEEP · head się przesuwasearch/* headrefs/crucible

    Przy KEEP kandydat staje się kolejnym headem refs/crucible/search/*. promotion_authority werdyktu train wynosi none.

Odrzucenie · nieważność · informacja zwrotna

REJECT i INVALID zachowują head, a kolejny kandydat dostaje tylko kody błędów i stałe ID zadań train. INVALID to nie wynik zero.

  1. weryfikator zadańassays/dane: paired evidenceagregacja sparowana · zadanie · rodzinapromotion.py

    Wyniki weryfikatora zadań są zachowywane jako pary baseline–kandydat.

  2. zamrożony ewaluator · wstępnie zarejestrowanycontract.pyuruchomienie · rozstrzygnięcie: wstępnie zarejestrowana agregacjaagregacja sparowana · zadanie · rodzinapromotion.py

    Sparowane wyniki są agregowane według zadań i wstępnie zarejestrowanych rodzin, a warunki budżetu, pokrycia, infrastruktury i bezpieczeństwa sprawdzane są osobno.

  3. KEEP · REJECT · INVALIDpromotion.pydane: REJECT · INVALIDkody błędów · ID zadań trainattempt/feedback.json

    Przy odrzuceniu lub nieważności poprzedni head zostaje, a kandydat i jego zapisy są zachowywane. Średnia INVALID to null, nie zero.

  4. kody błędów · ID zadań trainattempt/feedback.jsondane: kody błędów · ID zadańsearch/producers

    Informacja zwrotna dla kolejnego kandydata ogranicza się do kodów błędów i stałych ID zadań train; żadne trajektorie ani odpowiedzi ewaluatora nie są przekazywane.

Zapieczętowana kwalifikacja · osobne uprawnienie

Train KEEP przesuwa tylko head przeszukiwania. Zapieczętowana kwalifikacja dociera tylko do eligible ref; wydanie i wdrożenie produktu to osobne uprawnienia poza Crucible.

  1. evaluate → decide → recordsearch/supervisor.pydane: record · ref receipttrain bundle · przeliczony KEEPattestation/bundle.py

    Train bundle obowiązuje tylko wtedy, gdy łączą się kontrakt, dowody baseline i kandydata, przeliczony KEEP, rodowód propozycji, zapis supervisora i receipt zastosowanego ref. To nie inna nazwa poprawy.

  2. train bundle · przeliczony KEEPattestation/bundle.pyuruchomienie · rozstrzygnięcie: tylko train bundle · razrozłączny test pack · użyty razattestation/sealed.py

    Zapieczętowana ewaluacja używa test packu rozłącznego z train, jednorazowo, z zerem ponowień infrastrukturalnych.

  3. ELIGIBLE · release_authority noneattestation/sealed.pyuruchomienie · rozstrzygnięcie: tylko eligible refeligible/*refs/crucible

    Nawet ELIGIBLE zapisuje tylko refs/crucible/eligible/*, a release_authority jest ustalone na none.

Zapisy publiczne · r14 · r35

r14: train KEEP, potem zapieczętowane REJECT; r35 (July 13, 2026): INVALID z powodu niepełnego pokrycia i skażenia infrastruktury (0 sparowanych wierszy, średnia null), head bez zmian.

  1. KEEP · REJECT · INVALIDpromotion.pydane: publiczny verdict.jsongeode-eval-artifacts

    Publiczne artefakty to znormalizowane zapisy przypięte w 23e3428. Wstępnie zarejestrowany hash konfiguracji train w r14 różni się od publicznych bajtów konfiguracji, więc pełny oryginalny łańcuch nie jest ponownie certyfikowany.

  2. attestation/sealed.pydane: sealed decision.jsonr14 · train KEEP → sealed REJECTgeode-eval-artifacts

    r14: KEEP na telecom train, 6 zadań × 1 próba (6 sparowanych wierszy, bez uprawnienia do promocji), potem osobny zapieczętowany werdykt REJECT (bez uprawnienia do wydania).

Każde połączenie z tą samą wagą. Wybór przepływu wyróżnia tylko jego ścieżkę z ponumerowanymi krokami.

  • Linia ciągła · kierunek przepływu żądań, kandydatów i wyników
  • Linia przerywana · uruchamianie, rozstrzyganie, autoryzacja, konfiguracja
  • Gruba czarna linia · wybrany przepływ; liczby podają kolejność
  • Ramka · granica kodu lub zapisu, ścieżka w nagłówku
  • Wewnętrzny element · komponent w tej granicy
  • Przerywana ramka · poza tą granicą
  • supervisor przeszukiwania
  • kontrakt · werdykt · atestacja
  • refy · zapisy
  • producenci · wykonanie

Crucible to jądro oddzielne od SIL; oba przeszukiwania nie tworzą jednego potoku, który promuje kandydatów drugiego. Ramka wydania produktu nie ma żadnego połączenia przychodzącego.

Trzy uprawnienia
Train KEEP przesuwa head przeszukiwania, zapieczętowane ELIGIBLE zapisuje eligible ref, a wydanie produktu to osobna decyzja poza Crucible. Wcześniejszy werdykt nigdy nie daje późniejszego uprawnienia.
Null to nie zero
r35 planował 9 zadań × 3 próby (27 wierszy na ramię), ale miał 0 porównywalnych par, więc jego średnia i poprawa wynoszą null. To nie 27 nieudanych zadań ani wskaźnik sukcesu 0%.