Files
nanobot-runtime/projects/ai/artifacts/session-lifecycle-guide.md
2026-09-10 12:33:37 +02:00

4.4 KiB

Session lifecycle — kdy zůstat ve stejné session, kdy začít novou

Návod pro práci s LLM agenty (Claude Code, nanobot, …). Vychází z lessons learned v tomto projektu (review smyčka, Solarflare, file-based komunikace) a z obecných mechanik kontextu.

Rychlý rozhodovací test

Na každou další operaci si polož jednu otázku:

Co další krok víc potřebuje — historii rozhodnutí, nebo svěží pohled?

Další krok potřebuje Kam Proč
Vědět, co už padlo a proč stejná session decision history je v kontextu, agent drží odsouhlasená rozhodnutí
Nezávazný, „čisté oči" nová session žádný anchoring na vlastní předchozí práci
Obojí (typicky opravy po review) hybrid viz níž

A dva přepínače, které mají přednost:

  • Session je „zkažená" (2+ selhání stejné věci, chybová smyčka) → nová session. Selhané pokusy v kontextu táhnou model k jejich opakování.
  • Proběhla kompakce / historie už není kompletní → radši nová session + přečtené soubory (state, spec, diff) než práce z faded recollection. Půlzapamatovaná historie je horší než žádná.

Kdy zůstat ve stejné session

  • Sekvenční kroky jednoho úkolu — další krok stojí na rozhodnutích předchozích (např. po review: provést opravy).
  • Iterace na zadání — requirements se teprve objevují, každá zpětná vazba mění chápání úkolu.
  • Opravy po review — závěry oponenty aplikuje session s plnou historií, ne nová, která by znovu otevírala uzavřené otázky.
  • Krátké na sebe navazující operace — cokoliv, co se vejde pohodlně do kontextu a sdílí cíl.

Kdy začít novou session

  • Review vlastní práce — agent je anchorovaný na to, co sám napsal; nová session vidí jen výsledek a hodnotí objektivněji.
  • Oponentura / second opinion — ideálně jiný model/preset (procesní nezávislost, ne sdílený anchoring).
  • Verifikace čistého refaktoru — „zvenku se nic nezměnilo" umí ověřit jen někdo, kdo neví, co se uvnitř měnilo a proč.
  • Nezávislý paralelní úkol — nemíchat cizí kontext do session, která drží rozhodovací historii projektu.
  • Chybová smyčka — opakované selhání téhož úkolu; nová session bez pohledu na mrtvé pokusy.
  • Změna tématu — self-explanatory.
  • Po kompakci — když se plná historie už do okna nevešla a zbyl souhrn, chybí provenance rozhodnutí.

Hybrid pattern (klíčový vzorec)

Proces, který potřebuje obojí (svěží pohled i historii):

  1. Produkce — v původní session (plná historie rozhodnutí).
  2. Review — v čisté nové session, ideálně s omezeným mandátem („review jen security", „review jen API konzumenta") — omezený scope navíc brání reverzům odsouhlasených věcí.
  3. Závěry review — zapiš jako artefakt (soubor), ne jako konverzaci.
  4. Opravy — zpět v původní session, která artefakt přečte a aplikuje; drží se odsouhlasených rozhodnutí.

Přenos mezi sessions je vždy artefakt + role + zadání, nikdy historie konverzace. Artefakt je jediný spolehlivý nosič: je v diffu, přežije kompakci, cituje se přesně.

Mechaniky, které za tím stojí

  • Anchoring — model obhajuje vlastní předchozí výstup; čím déle v jedné session, tím menší šance, že najde vlastní chybu.
  • Degradace pozornosti — dlouhý kontext znamená horší využití informací uprostřed okna („lost in the middle"); rozhodnutí z úvodu session se přestávají uplatňovat.
  • Chybové pokusy jsou gravitace — selhané attempty v kontextu táhnou k jejich variacím, i když je to slepá ulička.
  • Kompakce je ztrátová — souhrn nezachová provenance (které rozhodnutí, proč, na základě čeho); session pak vypadá kompletně, ale není.

Praktická pravidla

  • Jedna session = jeden cíl. Když se cíl splnil, další cíl = nová session.
  • Nová session se startuje ze souborů (state.md, spec, scénářová tabulka), ne z „prosím pokračuj" v chatu.
  • Každé odsouhlasené rozhodnutí během práce zapisovat průběžně (memory.md / decision log) — to je to, co hybrid přenáší, ne chat.
  • Review v nové session vždy s explicitním mandátem, ideálně jiným modelem.
  • Po dvou selháních téhož kroku: stop, rekonstruovat zkontextovatelný stav do souboru, restart v nové session.