"Export je opravený, zostáva ho otestovať" - a tým sa práca skončila. Na druhý deň otvoríte projekt a neviete, ktoré súbory sa zmenili, na akej verzii sa kontroloval export ani kde sa testovanie zastavilo.
Ak chcete pokračovať bez opätovného skúmania, ďalšia fáza potrebuje uložený výsledok, informácie o kontrolách a najbližší krok. Pozrime sa na odovzdanie jednej úlohy: môže na nej pracovať jedna relácia, viacero vykonávateľov alebo vy sami na dvakrát.
Odovzdajte výsledok, ktorý sa dá otvoriť
V zozname nákupov nefunguje export do CSV. Požiadavka: export obsahuje iba zobrazené riadky a zachová ich poradie. Dohodli sme sa, že pri prázdnom zozname zostane riadok hlavičky bez dátových riadkov. Formát stĺpcov ani oddeľovač netreba meniť.
Namiesto "opravené, zostáva otestovať" zanecháme záznam, podľa ktorého sa dajú nájsť zmeny a pokračovať v práci. Hashe a výsledky nižšie sú ilustračné: ide o učebnú ukážku, za ktorou nie sú skutočné behy.
HANDOFF
Cieľ: CSV obsahuje iba zobrazené riadky v aktuálnom poradí.
Východisková verzia: základný commit 4f1c2ab.
Odovzdaný stav: commit 9d3e740 vo vetve fix-export, bez ďalších úprav.
Výsledok: src/export-csv.js - export načíta zoznam po filtrovaní a zoradení.
Manuálne overené na 9d3e740: pôvodné záznamy A, B, C; na obrazovke C, A;
v CSV sú dátové riadky C, A, záznam B chýba. Hlavičku nepočítame ako záznam.
Neoverené: prázdny zoznam; režim "iba nedokončené".
Rozhodnutie: formát stĺpcov ani oddeľovač nemeníme.
Ďalší krok: hlavná relácia overí dva zostávajúce scenáre.
Celkový stav úlohy: overovanie nie je dokončené.Písmená označujú tri záznamy v zozname. Scenár overuje dve veci naraz: skrytý záznam B sa do exportu nedostal a poradie C, A zodpovedá obrazovke. Nestačí len dostať dva riadky zo zoznamu, v ktorom sú iba dva - rovnaký výsledok by dal aj export bez filtrovania.
Záznam môžete uložiť do súboru HANDOFF.md alebo ho doplniť do existujúceho dokumentu úlohy. Povinný štandard polí neexistuje. Dôležité je, aby si ďalší vykonávateľ vedel záznam otvoriť spolu s potrebnými súbormi, aj keď nemá prístup k predošlej konverzácii.
Ak kontrolu vykonal príkaz, uveďte ho spolu so skutočným výsledkom a verziou kódu. "12 z 12 prešlo" nevysvetľuje, aké správanie sa overovalo. Pri manuálnom scenári treba uviesť vstupné údaje, vykonanú akciu a pozorovaný výsledok, ako v ukážke vyššie.
Návrh môžete zveriť Claude Code: "Priprav odovzdanie podľa aktuálnych súborov a vykonaných kontrol. Oddeľ fakty od predpokladov. Uveď, ktorý stav sa kontroloval, čo zostáva a čím pokračovať. Neoznačuj nevykonané kontroly za úspešné." Pred použitím porovnajte verziu so súbormi a výsledky so záznamami manuálnej kontroly alebo výstupom príkazov.
Určte vstupné a výstupné podmienky
Odovzdanie pomáha, keď ďalšia fáza vie, či má dosť informácií. Pri našej úlohe sa to dá opísať tromi riadkami.
| Fáza | Vstup | Výstup | Podmienka prijatia |
|---|---|---|---|
| Spresnenie | Požiadavka a aktuálne súbory | Príčina chyby s odkazom na kód, očakávané správanie | Je určené, ktoré riadky sa exportujú, v akom poradí a čo sa stane pri prázdnom zozname |
| Zmena | Dohodnuté správanie a vstupná verzia | Úprava exportu a záznam o lokálnom overení | Uložený stav je dostupný, zmenené súbory sú pomenované, overené je oddelené od neovereného |
| Overenie | Odovzdaný stav a scenáre | Pozorovania ku každému scenáru, obmedzenia a pripomienky | Výsledky sa vzťahujú na odovzdanú verziu; každý scenár má výsledok a pri pripomienkach je uvedený ďalší krok |
Najdôležitejší je pravý stĺpec. Pri prechode k overovaniu odpovedá na otázku "môžeme začať testovať?". Aj úplne opísaná úprava môže byť nesprávna. A dokončené overenie môže vrátiť chybu na opravu: použiteľná správa nemusí hlásiť úspech.
Ak verzia chýba, najprv zistite aktuálny stav súborov. Overiť ho môžete, ale starú správu naň bez porovnania prenášať nemožno. Fázy si nevyžadujú samostatných agentov ani dokumenty: menšia úloha môže prejsť všetkými tromi v jednej relácii a s jedinou poznámkou.
Zachovajte schválený stav
Pri odovzdávaní sa ľahko pomiešajú tri rôzne veci:
- uložený stav kódu - konkrétna verzia, ktorú možno obnoviť;
- poznámka o priebehu práce - čo sa urobilo, čo sa overilo a na čom ste sa dohodli;
- prijatie výsledku - rozhodnutie, že vykonaná práca stačí na dosiahnutie cieľa.
Commit odkazuje na súbory, ktoré sú v ňom uložené. Ak však po ňom zostali ďalšie zmeny, odkaz už nepopisuje celý odovzdávaný stav: aj tieto úpravy treba uložiť a uviesť zvlášť, vrátane nových súborov. Pri odovzdávaní sady zmien uveďte aj pôvodnú verziu, voči ktorej ich posudzujete. Odkaz iba na vetvu nestačí, tá sa ďalej mení.
Predstavte si, že v zázname je uvedený commit 9d3e740, ale súbor exportu sa po ňom už upravil. Príjemca pozná hash, no pracovať bude s iným kódom. Najprv zistí, čo sa zmenilo. Ak úprava ovplyvnila výber alebo poradie riadkov, predošlé overenie C, A nepotvrdzuje aktuálne správanie. Ak sa zmenil iba text komentára, samo osebe to nie je dôvod opakovať scenár.
Netreba commitovať po každom kroku ani spájať vlastné a cudzie úpravy do jedného commitu. Dôležité je, aby odovzdávaný stav existoval celý a príjemca k nemu mal prístup; spôsob ukladania určujú pravidlá projektu. Ak súbory nie sú na mieste, najprv skontrolujte uloženú verziu. Ak sa zmeny neuložili nikde, samotná poznámka ich neobnoví.
Obnovenie konverzácie samo osebe nevráti súbory do opísanej verzie. Ani snímky zmien v Claude Code nezachytávajú všetko: úpravy cez Bash sa nesledujú a obnovenie zmien od iných vykonávateľov má svoje obmedzenia. Preto sa odovzdanie opiera o uložené súbory a ich verziu. Viac: Checkpointing.
Zistite príčinu prerušenia
"Nepodarilo sa" môže znamenať aspoň tri rôzne situácie.
Lokálne spustenie sa prerušilo. Príkaz sa nedokončil alebo sa kontrola zastavila uprostred. Najprv zistite, čo sa stihlo vykonať a zmeniť. Ak ste príčinu odstránili a opakovanie nezduplikuje už vykonanú akciu, nedokončený krok môžete zopakovať. V našom príklade počítajme s jedným opakovaním; ak sa preruší aj ono, zaznamenáme dôvod a čo treba na pokračovanie. Limit závisí od operácie, nekonečné opakovanie nič nevysvetlí.
Očakávané správanie nie je jasné. Napríklad vykonávateľ nevie, ktoré riadky sa majú považovať za zobrazené pri zapnutom filtri. Najprv si pozrie zaznamenanú požiadavku. Ak v nej odpoveď nenájde, položí otázku osobe zodpovednej za požiadavku. V oprave môže pokračovať po odpovedi; opätovné spustenie ju nenahradí.
Nový fakt vyvrátil prijaté rozhodnutie. Ukázalo sa, že CSV číta iný program. Po spresnení sa dohodlo iné zloženie stĺpcov a požiadavka na poradie sa zrušila. Práca sa vracia k spresneniu: treba zaznamenať nové kritérium a znova posúdiť úpravu i kontroly, ktoré od neho závisia. Predošlý scenár môže byť naďalej užitočný, ale už nepotvrdzuje celú aktualizovanú úlohu.
Tu sa práca vracia k spresneniu, pretože sa zmenilo pôvodné rozhodnutie. Ak požiadavka zostala rovnaká a chyba sa našla v implementácii, stačí vrátiť sa k zmene. Znova sa posudzujú výsledky závislé od dotknutého rozhodnutia.
Pokračujte z aktuálneho bodu
Pri obnovení práce postupujte v piatich krokoch:
- prečítajte si celé odovzdanie vrátane neoverených vecí;
- porovnajte odovzdaný stav s dostupnými súbormi a ďalšími zmenami;
- zistite výsledok prerušeného úkonu, ak k nemu došlo;
- určte, ktoré predošlé výsledky sú stále platné;
- vykonajte najbližší nedokončený krok a aktualizujte záznam.
Vráťme sa k pôvodnému príkladu, v ktorom sa požiadavky nezmenili. Ďalšia relácia otvorila odovzdanie a skontrolovala stav: commit 9d3e740 je dostupný, ďalšie úpravy nepribudli a údaje aj podmienky overenia zostali rovnaké. Scenár C, A je už dokončený a jeho výsledok stále platí. Opravu netreba písať znova.
Teraz príjemca overí prázdny zoznam. Podľa požiadavky má v CSV zostať riadok hlavičky bez dát. V našom učebnom pokračovaní to tak naozaj dopadlo. Do záznamu stačí doplniť výsledok a nahradiť zostávajúci krok:
Manuálne overené na 9d3e740: export prázdneho zoznamu obsahuje iba hlavičku.
Predtým overený scenár C, A je naďalej aktuálny.
Neoverené: režim "iba nedokončené".
Ďalší krok: hlavná relácia overí tento režim.
Celkový stav úlohy: overovanie nie je dokončené.Odovzdanie sa zmenilo spolu s prácou. Jeden z dvoch zostávajúcich scenárov je hotový, druhý je v zázname stále uvedený. Čiastočný výsledok neuzatvára pôvodný cieľ; presun kontroly do inej úlohy si vyžaduje samostatné rozhodnutie o zmene rozsahu.
Ak sa spustenie prerušilo, možno bude treba zopakovať celý scenár od začiatku: nie každý nástroj vie pokračovať od miesta prerušenia. Už dokončené kontroly zostávajú platné, pokiaľ sú aktuálne ich kód, vstupné údaje a podmienky.
Operácia sa mohla vykonať, aj keď odpoveď s výsledkom neprišla. Pred opakovaným odoslaním údajov, publikovaním alebo zápisom do súboru zistite, či sa akcia už nevykonala. Miesto vykonania nič nezaručuje: aj lokálny príkaz môže tie isté údaje pridať druhýkrát. Kým výsledok nie je známy, opakovanie nesmie nahradiť kontrolu stavu.
Kto pripravuje odovzdanie
Claude Code môže zhromaždiť fakty, skontrolovať vstup pre ďalšiu fázu a vykonať už dohodnutý krok. Vy overíte, či záznam zodpovedá súborom a výsledkom spustení. O sporných požiadavkách a zmene rozsahu rozhoduje človek alebo určená zodpovedná osoba; v našom procese výsledok napokon schvaľuje človek.
Uložená verzia pomáha pokračovať v práci, ale nerozširuje právomoci vykonávateľa. Ak má skontrolovať export, existencia bodu obnovenia mu nedáva povolenie zároveň meniť formát stĺpcov. Hranice úlohy platia aj po odovzdaní.
GO TO FULL VERSION