Hledejte chyby pomocí ověřitelných hypotéz
DokončenoPoužijte agenta k porovnání vysvětlení a sběru důkazů. Vyhněte se opakovaným změnám bez ověřené příčiny.
Vydává TaigaJak píšeme
Ověřte si porozuměníPožadavek selhává až po nasazení, ale lokálně funguje. Co má agent udělat nejdříve?Vypracovat cvičení
Co se naučíte
- Přesně popsat očekávané a pozorované chování.
- Vybrat pozorování, které odliší konkurenční vysvětlení.
- Ověřit opravu bez záměny odstranění příznaku za odstranění příčiny.
Před návrhem opravy popište selhání
Užitečný požadavek na hledání chyby uvádí očekávané chování, pozorované chování a dotčený rozsah. Zahrňte verzi, příslušný vstup a chybu. Než logy předáte nástroji AI, odstraňte z nich přihlašovací údaje a soukromé záznamy.
„Export nefunguje“ dává málo vodítek. Lepší popis zní: „Lokálně export uspěje. Ve stagingu stejný požadavek manažera po posledním nasazení vrací 403. Ostatní cesty stále fungují.“
Tento popis neprokazuje příčinu. Určuje rozdíly, které mohou vést šetření.
Ponechte několik možných vysvětlení
Požádejte agenta o malý soubor věrohodných příčin a důkazů pro každou z nich. Nechtějte, aby se přiklonil k prvnímu přesvědčivému vysvětlení.
U fiktivního selhání exportu může chybět oprávnění identity služby, mohlo se změnit mapování rolí nebo požadavek směřuje do nesprávného prostředí. Každé vysvětlení předpovídá jiné důkazy.
| Hypotéza | Pozorování, které ji pomůže odlišit |
|---|---|
| Identita služby nemůže číst data exportu | Identitě služby je zamítnut přístup k cílovému prostředku |
| Změnilo se mapování rolí | Požadavek dorazí do aplikace s jinou skutečně uplatněnou rolí |
| Požadavek používá nesprávné prostředí | Výsledný endpoint nebo identifikátor prostředku se liší od zamýšleného cíle |
Tabulka je výchozí bod. Odpověď 403 může vzniknout v různých vrstvách. Než předpokládáte selhání autorizace aplikace, určete komponentu, která ji vytvořila.
Zvolte bezpečné pozorování
Začněte pozorováním, které levně odliší vysvětlení. Porovnejte nasazenou verzi a konfiguraci bez tajných údajů. Prozkoumejte příslušnou chybu a identifikátor požadavku. Pokud je to možné, reprodukujte problém v povoleném testovacím prostředí.
Neudělujte rozsáhlá oprávnění jen proto, abyste zjistili, zda chyba zmizí. Taková akce mění bezpečnostní hranici a může skrýt skutečně chybějící oprávnění. Nevkládejte do modelu celý produkční log, pokud stačí chybová zpráva s odstraněnými citlivými údaji a cesta požadavku.
Uveďte, co by každou hypotézu oslabilo. Agent pak snáze upraví vysvětlení, místo aby obhajoval první odpověď.
Měňte vždy jednu příčinu
Jakmile důkazy ukážou pravděpodobnou příčinu, proveďte cílenou opravu. Nekombinujte změnu oprávnění, aktualizaci knihovny a přepis obsluhy. Pokud příznak zmizí, nevěděli byste, která změna byla rozhodující.
Ověřte původní podmínku selhání. Zkontrolujte také sousední hranici. Pokud opravíte přístup manažera, potvrďte, že neoprávněný uživatel stále dostává zamítnutí.
U opakované chyby přidejte regresní kontrolu ve vrstvě, která ji dokáže odhalit. Unit test nemůže zjistit každou chybu konfigurace nasazení. Některá selhání potřebují integrační kontrolu nebo řízené ověření po nasazení.
Zastavte opakované pokusy bez nových důkazů
Agent může vygenerovat mnoho variant opravy. Více pokusů nemusí zlepšit diagnózu. Pokud se stejné selhání opakuje, ptejte se, jaké nové pozorování přinese další pokus.
Pro nejisté šetření stanovte limit času nebo počtu pokusů. Po jeho dosažení nahlaste současné důkazy, zamítnuté hypotézy a nevyřešenou otázku. Tento záznam umožní dalšímu člověku pokračovat bez opakování stejných experimentů.
Po obnovení funkce zaznamenejte příčinu a podmínku, která jí umožnila dostat se do dotčeného prostředí. Oprava odstraní bezprostřední chybu. Užitečný následný krok sníží pravděpodobnost jejího návratu.
Vypracovat cvičení
Sepište poznámku k nedávné chybě. Zahrňte očekávané a pozorované chování, dotčený rozsah a tři možné příčiny. Pro každou příčinu uveďte jedno pozorování, které by ji oslabilo. Nejdříve zvolte nejlevnější bezpečné pozorování.
Stáhnout pracovní list (Markdown)Zrušení této volby smaže veškerý postup uložený v tomto prohlížeči.
Postup zůstává v tomto prohlížeči. Bez účtu a sledování.