Preskočite na glavno vsebino
OpenAI

9. januar 2026

V podjetju Datadog pregledujejo kodo na sistemski ravni s Codexom

Z uporabo Codexa v podjetju Datadog upoštevajo sistemski kontekst pri vsakem pregledovanju kode, da preprečijo incidente in upravičijo zaupanje strank.

Nalaganje …

Podjetje Datadog(odpre se v novem oknu) upravlja eno najbolj razširjenih opazovalnih platform na svetu, ki podjetjem pomaga spremljati delovanje kompleksnih porazdeljenih sistemov, odpravljati težave v njih in jim zagotavljati zaščito. Ko se nekaj pokvari, se stranke zanašajo na to, da bodo v podjetju Datadog hitro odkrili težave, kar pomeni, da mora biti za zanesljivost poskrbljeno, precej preden koda sploh doseže produkcijo.

Za inženirske ekipe v podjetju Datadog predstavlja pregledovanje kode opravilo z visokim tveganjem. Ne gre zgolj za odkrivanje napak, temveč za razumevanje, kako se spremembe širijo skozi medsebojno povezane sisteme, to pa je področje, kjer tradicionalna statična analiza in orodja, ki temeljijo na pravilih, pogosto ne zadostujejo.

Da bi se spopadla s tem izzivom, se je ekipa AI Development Experience (AI DevX) v podjetju Datadog obrnila na Codex, kodirnega agenta družbe OpenAI, ki v pregledovanje kode vnaša sklepanje na sistemski ravni in razkriva tveganja, ki jih ljudje ne morejo zlahka opaziti v širšem obsegu.

»Prihranki časa so resnični in pomembni,« pravi Brad Carter, ki vodi ekipo AI DevX pri podjetju Datadog. »Vendar je preprečevanje incidentov pri našem obsegu delovanja precej zahtevno opravilo.«

Dodajanje konteksta na ravni sistema pri pregledovanju kode s Codexom

Za učinkovito pregledovanje kode so se v podjetju Datadog tradicionalno močno zanašali na višje inženirje, strokovnjake, ki dovolj dobro razumejo kodno zbirko, njeno zgodovino in arhitekturne kompromise, da lahko prepoznajo sistemsko tveganje. 

Toda pri takšnem globokem kontekstu je težko razširiti obseg in zgodnja orodja za pregledovanje kode z umetno inteligenco tega problema niso rešila; mnoga so se obnašala kot napredni odstranjevalniki napak, ki so označevala površinske težave, a hkrati spregledala širše sistemske posebnosti. Inženirjem podjetja Datadog so se predlogi pogosto zdeli preveč površni ali preveč zamegljeni s šumom, zato so jih prezrli.

V podjetju Datadog so pilotno uvedli Codex, kodirnega agenta družbe OpenAI, in sicer tako, da so ga integrirali v delovne tokove razvoja v živo. V enem največjih in najbolj pogosto uporabljenih repozitorijev podjetja je Codex samodejno pregledal vsako zahtevo za združitev sprememb. Inženirji so se na komentarje iz Codexa odzvali z odobritvijo ali zavrnitvijo (s palcem gor ali dol) in delili neformalne povratne informacije med ekipami. Mnogi so izpostavili, da je bilo povratne informacije Codexa vredno prebrati – za razliko od prejšnjih orodij, ki so ustvarjala s šumom zamegljene ali površne predloge.

Preverjanje pregleda UI glede na dejanske incidente

Da bi preizkusili, ali lahko pregled s pomočjo umetne inteligence naredi več kot le opozori na slogovne težave, so v podjetju Datadog razvili ogrodje za poustvarjanje incidentov.

Namesto uporabe hipotetičnih scenarijev se je ekipa vrnila k preteklim incidentom. Rekonstruirali so zahteve za združitev sprememb, ki so prispevale k incidentom, zagnali Codex na vsaki od njih, kot da bi bila del prvotnega pregleda, nato pa so inženirje, ki so bili odgovorni za te incidente, vprašali, ali bi bil s povratnimi informacijami Codexa izid kaj drugačen.

Rezultat: Codex je odkril več kot 10 primerov oziroma približno 22 % incidentov, ki so jih obravnavali v podjetju Datadog, pri katerih so inženirji potrdili, da bi povratne informacije, ki jih je podal Codex, pomembno vplivale na končni izid – kar je več kot katero koli drugo ocenjeno orodje.

Ker so te zahteve za združitev sprememb že prestale pregled kode, je ponovljeni preizkus pokazal, da je Codex izpostavil tveganja, ki jih pregledovalci prvotno niso opazili, s čimer je dopolnjeval človeško presojo, namesto da bi jo nadomestil.

Zagotavljanje doslednih in pronicljivih povratnih informacij

Analiza podjetja Datadog je pokazala, da je Codex dosledno označeval težave, ki niso očitne že iz samega neposrednega odkrivanja razlik in jih ni mogoče zaznati z determinističnimi pravili.

Inženirji so komentarje Codexa opisali kot več kot le »šum bota«:

  • Codex je opozoril na interakcije z moduli, ki pri odkrivanju razlik niso bile zaznane
  • Prepoznal je manjkajočo pokritost pri preizkušanju na področjih povezovanja med različnimi storitvami
  • Izpostavil je spremembe API-pogodbe, ki so predstavljale tveganje za nadaljnje procese
»Zame je komentar Codexa kot najpametnejši inženir, s katerim sem kdajkoli delal in ki ima neskončno časa za iskanje napak. Vidi povezave, ki jih moji možgani ne morejo obdelati vseh naenkrat.«
– Brad Carter, vodja inženiringa v podjetju Datadog

Prav ta sposobnost povezovanja povratnih informacij iz pregledov z dejanskimi rezultati preizkusov zanesljivosti je bila tisto, zaradi česar je Codex izstopal v oceni podjetja Datadog. Za razliko od orodij za statično analizo Codex primerja namen zahteve za združitev sprememb s predloženimi spremembami kode, pri čemer s sklepanjem o celotni kodni zbirki in odvisnostih izvrši kodo in preizkuse, da preveri delovanje.

»Codex je bil prvi, za katerega se je zdelo, da dejansko upošteva odkrite razlike v širšem kontekstu programa,« pravi Carter. »To je bilo nekaj povsem novega in presunljivega.«

Za mnoge inženirje je ta premik povsem spremenil način dojemanja pregledovanja z umetno inteligenco. »Komentarje Codexa sem začel jemati kot resnične povratne informacije o pregledu kode,« pravi Ted Wexler, višji programski inženir pri podjetju Datadog. »Ne nekaj, kar bi preletel ali prezrl, pač pa nekaj, čemur je vredno posvetiti pozornost.«

Osredotočanje inženirjev na oblikovanje namesto na odkrivanje napak

Po opravljeni ocenitvi so v podjetju Datadog Codex uvedli širše med svojim inženirskim kadrom. Danes ga redno uporablja več kot 1000 inženirjev

Povratne informacije se večinoma pojavljajo organsko in ne prek formalnih metrik v orodju. Inženirji na Slacku objavljajo uporabne vpoglede, konstruktivne komentarje in trenutke, ko jim je Codex pomagal drugače razmišljati o nekem problemu.

Čeprav so prihranki časa znatni, so ekipe vztrajno izpostavljale pomembnejši premik v samem načinu opravljanja dela. 

»Po zaslugi Codexa imam zdaj drugačno mnenje o tem, kakšno naj bi bilo pregledovanje kode. Ne gre za posnemanje naših najboljših človeških pregledovalcev. Gre za iskanje kritičnih napak in mejnih primerov, ki jih ljudje težko opazijo pri ločenem pregledovanju sprememb.«
– Brad Carter, vodja inženiringa v podjetju Datadog

Na novo opredeljujemo pregledovanje kode glede na tveganje in ne hitrost

Širši vpliv na podjetje Datadog ima sprememba v sami opredelitvi pregledovanja kode. Namesto da bi se pregledovanje obravnavalo kot kontrolna točka za odkrivanje napak ali optimizacijo časa cikla, je za ekipo Codex odslej osrednji sistem za zagotavljanje zanesljivosti, ki deluje kot partner in omogoča naslednje:

  • Odkrivanje tveganj, ki presega to, kar lahko posamezni pregledovalci zaznajo znotraj konteksta
  • Izpostavljanje interakcij med moduli in storitvami
  • Povečevanje zaupanja v dobave v velikem obsegu
  • Omogočanje človeškim pregledovalcem, da posvečajo pozornost arhitekturi in oblikovanju

Ta premik je usklajen s tem, kako vodilni v podjetju Datadog zastavljajo inženirske prednostne naloge, kjer sta zanesljivost in zaupanje enako pomembna kot hitrost ali celo pomembnejša.

»Smo platforma, na katero se podjetja zanašajo, ko vse drugo odpove,« pravi Carter. »Preprečevanje incidentov krepi zaupanje, ki ga naše stranke polagajo v nas.«