[ BLOG // 2026-06-25 // 2 MIN ]

Orca — řízení PR na úrovni jednotlivých úkolů

Každý úkol v Orce teď může mít vlastní nastavení GitHub PR workflow: výchozí, zapnuto, vypnuto. Navíc opravena dvě chyby, které umožňovaly odeslat neúplný PR před dokončením mise.

ORCA ORCAAIAGENTSGITHUBPRWORKFLOW

Když AI agent pracuje na kódu a výsledek má skončit jako GitHub Pull Request, nastává otázka: které úkoly mají generovat PR a které ne? Do teď Orca řešila PR workflow na úrovni projektu nebo globálně. Nově jde nastavit pro každý úkol zvlášť.

Proč per-task PR

V praxi se ukázalo, že ne všechny úkoly v rámci jedné mise mají mít stejný workflow. Některé agent dělá jako interní přípravu — refaktor, přidání testů, úpravu konfigurace — a PR by bylo jen rušení. Jiné naopak vyžadují review a merge. Mít jedno přepínač pro celý projekt nestačí.

Řešení: tri-state přepínač (Výchozí / Zapnuto / Vypnuto) přímo ve formuláři nového úkolu. Výchozí dědí z nastavení projektu, zapnuto/vypnuto přepíše.

Jak to funguje uvnitř

Když uživatel zvolí pr/on nebo pr/off, hodnota se zapíše jako label na epic (pr:on / pr:off). Při spuštění mise řeší orchestrátor pořadí: label na úkolu → nastavení projektu → globální default. Nejkonkrétnější volba vyhrává.

To znamená, že v rámci jedné mise může mít jeden úkol PR automaticky, další manuálně a třetí vůbec — bez nutnosti přepínat projektové nastavení.

Opravená chyba: neúplné PR

Při živém běhu se ukázalo, že tlačítko „Otevřít PR” šlo použít i v průběhu mise, kdy agent stále pracoval. Výsledek? Částečný PR s nedokončenými změnami.

Oprava: manuální „Otevřít PR” se teď objeví pouze poté, co mise prošla ověřením a je v persisted stavu ready. Endpoint odmítne nedokončenou misi (HTTP 409). Stejně tak endpoint POST /mission/:id/pr odmítá misi, která nemá stav ready nebo open.

Dřív stačilo kliknout „Open PR” po dokončení první fáze a dostali jste PR s půlkou mise. Teď to nejde — musíte počkat, dokud orchestrátor neoznámí hotovo.

De-duplikace jmen agentů

Druhý bug, který se projevil při živém běhu: plánovač mohl přiřadit stejné jméno agenta více fázím. Ty pak kolidovaly na jménu tmux session a mise zůstala viset. Oprava: při persistování plánu se jména fází de-duplikují, takže každá fáze dostane unikátní session.

Co to znamená pro praxi

Per-task PR je malá změna v UI, ale velký posun v ovladatelnosti. Namísto binárního „máme PR workflow zapnuté nebo ne” dostáváte granulární kontrolu nad tím, kdy a jak se práce AI agenta promítne do Gitu. Méně šumu v historii, čistší review, méně ručního přepínání.

Automatizace funguje nejlíp, když ji lze přizpůsobit kontextu — ne když se musíte přizpůsobit jí.

// ALL_POSTS
ZPĚT NA BLOG