Tier 3 overnight — kuratorowany backlog + scheduled + review-on-arrival
Pytanie scorecard: Czy uruchamiacie autonomiczne nocne runy (Codex Cloud, Cursor Cloud Agents)? Odpowiedź na max (3 pkt): Kuratorowany backlog “AI eligible”, scheduled runs, review‑on‑arrival rano.
Dlaczego to ma znaczenie w 2026
Dział zatytułowany „Dlaczego to ma znaczenie w 2026”Tier 3 — pełna autonomia, fire‑and‑forget — to najczęściej przepłacana i najsłabiej skonfigurowana zdolność w stacku inżynierskim 2026. Każdy CTO słyszał pitch (“Codex Cloud pisze kod, gdy ty śpisz”) i większość spotkała zespół, który to włączył, zobaczył 40 PR‑ów w środę rano, poddał się przed lunchem i po cichu wyłączył trzy tygodnie później. Funkcja jest realna; domyślny rollout zawodzi.
Zawodzi z jednego strukturalnego powodu: nocne runy to mnożnik siły i wzmacniają to, co już jest. Jeśli wąskim gardłem jest bandwidth review, Tier 3 zamienia go w ścianę. Jeśli backlog nie ma dyscypliny labelów, agent bierze to, co na górze — zwykle to, co najtrudniejsze. Zespoły, które dobijają 3 punkty w Q15, dotarły tam kuratorując, które tickety są eligible, planując runy świadomie i budując poranny rytuał, który absorbuje output.
Bycie jeden tier niżej liczy się jako zero. Ad‑hoc Cursor Cloud Agents, gdy ktoś ma ochotę, jest bliżej Tier 2. Tier 3 znaczy: praca dzieje się niezależnie od tego, czy ktoś naciska przycisk — i po drugiej stronie istnieje system zaprojektowany, żeby ją złapać. W połowie 2026 funkcjonalność jest scommodityzowana (scheduled runs Codex Cloud, Cursor Cloud Agents na VM‑ach, background agents Claude Code na własnej infrze). Dyscyplina wokół niej jest tym, co cię różnicuje.
Jak naprawdę wygląda “max score”
Dział zatytułowany „Jak naprawdę wygląda “max score””Odpowiedź na 3 punkty ma trzy nośne elementy: kuracja sterowana labelami, nocny cron oraz poranny triage. Wyrzuć którykolwiek i spadasz do dwóch.
- Kuratorowany backlog “AI eligible”. Tickety noszą jawny label
ai-eligible(lubagent-ok) nadawany podczas triage przez ludzi znających kod. Label oznacza: mała, dobrze wyspecyfikowana, niski blast radius, odwracalna zmiana. Nie: migracje schematu, ścieżki wrażliwe na bezpieczeństwo, billing, cokolwiek gdzie spec siedzi w czyjejś głowie. - Feeder kolejki, nie strażacka sikawka. Orkiestrator pobiera ograniczoną liczbę ticketów na noc — typowo 5–15, dopasowaną do realnej zdolności review. Cap per repo. Nigdy “weź następne 50”.
- Scheduled runs na realnym cronie. Scheduled tasks Codex Cloud, Cursor Cloud Agents z nocnego GitHub Action, albo własny feeder. Stała godzina (22:00–02:00 lokalnie), deterministyczny dispatch, żeby ten sam ticket nie poszedł dwa razy.
- Jeden PR na ticket, ze strukturalnym metadata. Stabilny prefix tytułu (
[nightly]lub[codex-cloud]), źródłowe zadanie linkowane, diff zawężony do jednej logicznej zmiany, podsumowanie self‑testu. - Rytuał review‑on‑arrival. Wyznaczony człowiek (lub rotacja) jest właścicielem kolejki. Do 10:00 każdy PR posortowany: merge, popraw, odrzuć. CI już się wykonał; AI review (CodeRabbit, Greptile, Claude Code Action — patrz Q9 · Automatyzacja review PR) zostawił pierwsze komentarze.
- Wymuszony SLA. “Nocne PR‑y przejrzane do 11:00, zmerge’owane lub odrzucone do EOD” — spisane, z właścicielem, monitorowane. Misses auto‑zamykają się następnej nocy.
- Twarde wykluczenia na wrażliwych ścieżkach. Plik w stylu
CODEOWNERSlub.agent-excludelistuje ścieżki, których agent nie może tykać — auth, płatności, migracje, manifesty infra,/security/. Agent failuje fast. - Dashboard z matematyką. Tygodniowo: PR‑y otwarte, % zmerge’owanych, % odrzuconych, % wymagających poprawek, średni czas review, $ koszt per zmerge’owany PR. Jeśli merged < 60% lub cost/PR pełznie powyżej 5–8 USD — zacieśnij rubrykę, nie kupuj więcej kredytów.
Konkretnie: w piątek zespół kolejkuje 12 ticketów. W sobotę rano on‑call widzi 9 PR‑ów (trzy zablokowane przez wykluczenia), CI zielony na 7, AI reviewer flagował 2; człowiek merge’uje 6, poprawia 2, odrzuca 1 — wszystko przed południem.
Aktualny krajobraz (zweryfikowany w sieci)
Dział zatytułowany „Aktualny krajobraz (zweryfikowany w sieci)”Codex Cloud (hostowane scheduled agents OpenAI)
Dział zatytułowany „Codex Cloud (hostowane scheduled agents OpenAI)”Codex Cloud — hostowany backend za codex na ChatGPT Pro / Business / Enterprise — został w 2026 koniem pociągowym nocnych pipeline’ów.
- Scheduled tasks per repo z ustalonym promptem, branchem docelowym i wyrażeniem cron. Task ciągnie otwarte issue po labelu, dispatchuje jeden run per ticket w izolowanym sandboxie, otwiera PR per wynik. Bilingowane z org‑level quoty, nie z indywidualnych seatów.
- Sandboxowane VM‑y. Świeży kontener z checkoutem repo, załadowanymi
AGENTS.md/CLAUDE.md, capem 30–60 minut. Agent może w sandboxie odpalić testy i iterować przed pushem. - Stabilny kontrakt PR‑a. Otwierane przez
codex-cloud[bot], deterministyczny prefix tytułu, strukturalne body z linkiem do źródłowego issue, podsumowaniem reasoningu i raportem self‑testu. - Quoty mają znaczenie. Business i Enterprise mają jawne capy równoległych runów; Pro jest indywidualny i nie nadaje się do zespołowych pipeline’ów. Throttle errors znaczą, że wyrosłeś z tieru.
Killer setup: jeden scheduled task per repo, celujący w ai-eligible, z capem 10 dispatchów na noc. Większość zespołów cap niewykorzystuje — właściwy tryb porażki.
Cursor Cloud Agents
Dział zatytułowany „Cursor Cloud Agents”Cursor Cloud Agents — autonomiczne, oparte o VM, z self‑testem i nagrywaniem demo — pokrywają tę samą niszę w innym rytmie. Typowo odpalane na żądanie z IDE lub API Cursora, nie z fixed crona, więc lepsze do ograniczonych batch runów niż do czystych nocnych pipeline’ów.
- Izolacja VM per task. Izolowane środowisko, twoje repo, twoje
.cursorrules, biblioteka reguł. Instaluje dependencje, odpala suite testów, nagrywa video demo, iteruje aż testy przejdą. - Merge‑ready PR‑y z demem. Diff, pisemne podsumowanie i (unikalnie) nagranie ekranu, jak agent demonstruje działającą zmianę — killer artifact dla review.
- Lepsze do “15 ticketów do rana” niż “co noc drenuj kolejkę”. Hybryda: senior IC odpala batch na koniec dnia, agenci jadą nocą, IC robi review rano.
- Kształt kosztu. Bilingowane po czasie runu i tokenach. Batch 10–15 ticketów typowo 40–80 USD — taniej niż godzina seniora.
Większość zespołów: Codex Cloud na nawracający cron, Cursor Cloud Agents na planowany batch.
Anthropic Computer Use / wzorce automatyzacji agentów
Dział zatytułowany „Anthropic Computer Use / wzorce automatyzacji agentów”Anthropic w późnym 2026 idzie mniej w stronę hostowanego produktu, bardziej w dawanie prymitywów do zbudowania własnego.
- Background agents Claude Code przez Agent SDK na twojej własnej infrastrukturze — GitHub Action, Cloudflare Worker, EC2 — ciągnące tickety z kolejki, którą kontrolujesz. Ty masz orkiestrację; Anthropic dostarcza runtime.
- Computer Use to overkill dla kodu, ale doskonały do tego, czego Codex Cloud i Cursor nie tykają: triage regresji wizualnej, diffy screenshotów, portale third‑party, smoke testy na staging.
- BYO scheduler. Sparuj Claude Code z Temporal, GitHub Actions, czy plain cronem i traktuj agenta jako callable. Większa kontrola, więcej glue code.
Jeśli już ufasz jakiemuś job runnerowi, BYO na Claude jest najbardziej elastyczne. Jeśli chcesz, żeby zadziałało dziś w nocy, Codex Cloud to krótsza droga.
Jak wygląda “AI eligible”
Dział zatytułowany „Jak wygląda “AI eligible””Label to cała gra.
- Tak, domyślnie: PR‑y Renovate / Dependabot wymagające zmian w kodzie, rolloutowanie reguł lintera lub formattera, update’y docs, adnotacje typów, standaryzacja logów, usuwanie dead code,
data-testid, fixy lintów dostępności, testy dla niepokrytych funkcji, kosmetyka README, doprecyzowywanie błędów. - Może, z jawnym ograniczeniem w tickecie: małe refactory z czystym before/after, single‑file feature flagi, copy zmiany w i18n, drobny tuning performance z benchmarkiem, usunięcie deprecated API.
- Nigdy: auth, płatności, billing, szyfrowanie, zarządzanie kluczami, migracje schematu, infra‑as‑code z prod blast radius, pipeline buildu, cokolwiek bez pełnych kryteriów akceptacji, cross‑repo lub blokujące release.
- Reguła kciuka: jeśli to zajmie seniorowi więcej niż 30 minut, albo nie potrafisz spisać sukcesu w jednym zdaniu — to nie jest
ai-eligible.
Workflow review‑on‑arrival (filtr, batch, merge)
Dział zatytułowany „Workflow review‑on‑arrival (filtr, batch, merge)”Trzy kroki, budżet 60 minut na 8–12 PR‑ów:
- Filtr (10 min). Zapisany filtr GitHub
is:pr author:codex-cloud[bot] is:open created:>{yesterday}. Posortuj: “nie wymaga uwagi człowieka” → “AI flagował” → “CI failed”. CI‑failed zamyka się od razu, chyba że następna iteracja jest w kolejce. - Batch (20–30 min). Pogrupuj ocalałych po obszarze kodu. Najłatwiejszy klaster najpierw (docs, lint), potem średnie. Jednolinijkowy approval.
- Popraw lub odrzuć (10–20 min). Jedna runda: wepchnij mały fix i merge, albo zostaw komentarz i re‑run agenta. Wciąż failuje po jednym cyklu → odrzucony i refileowany jako ticket dla człowieka.
Powyżej 90 minut znaczy, że kuracja jest za luźna.
Krok po kroku: uruchamianie nocnych runów
Dział zatytułowany „Krok po kroku: uruchamianie nocnych runów”-
Najpierw wybierz platformę. Codex Cloud, jeśli jesteś już na ChatGPT Business / Enterprise i chcesz minimum setupu. Cursor Cloud Agents na video demo i batche. Claude Code + własny scheduler dla silnego DevEx i pełnej kontroli. Nie odpalaj więcej niż jednej w pierwszych 90 dniach.
-
Zdefiniuj rubrykę
ai-eligible. Jedna strona w handbooku z listami “tak / może / nigdy” powyżej, dopasowanymi do twojego kodu. Sign‑off od jednego seniora per główny obszar przed publikacją. Dodaj label do Linear / Jira / GitHub Issues. -
Pilotaż na jednym repo, jednym labelu, dziesięciu ticketach. Repo o niskiej stawce. Dokładnie dziesięć ticketów. Nie schedule’uj jeszcze — odpal jednorazowy batch ręcznie i przejdź przez PR‑y z zespołem następnego ranka. Co cię zaskoczyło, to dziura w kuracji.
-
Dostraj rubrykę. Jeśli 3 z 10 PR‑ów były “nie o to chodziło”, rubryka ma dziury. Zacieśnij język, rozszerz “nigdy”, przeszkol triage. Powtórz batch na świeżych ticketach. Dopiero przy ≥80% merge‑gotowych przy pierwszym review przechodzisz do schedule’a.
-
Podepnij scheduler. Codex: scheduled task per repo z filtrem labela i capem 10 dispatchów. Cursor: nocny GitHub Action dispatchujący Cloud Agent per ticket do capa. Claude Code: własny job runner. Loguj każdy dispatch z timestampem, ID ticketa, run ID.
-
Dodaj twarde wykluczenia. Plik
.agent-exclude(lub rozszerzonyCODEOWNERS) listujący ścieżki, których agent nie może tykać — auth, płatności, billing, migracje, manifesty infra,/security/,*secrets*. Agent wykrywa zakazaną ścieżkę i pomija ticket bez PR‑a. Test ticketem “pułapką”. -
Postaw poranny rytuał. Właściciel (lub rotacja). Slot 09:00–10:00 w kalendarzu na “Nightly PR triage”. Zapisany filtr GitHuba, heurystyki merge / popraw / odrzuć, SLA: decyzja do 11:00. Auto‑zamykaj PR‑y starsze niż 24h.
-
Podepnij AI review do tych samych PR‑ów. CodeRabbit, Greptile, Claude Code Action lub Codex Review na każdym nocnym PR‑ze przed człowiekiem. Krytyczne flagi = martwy w drodze; czysto = szybki czyt człowieka. (Patrz Q9.)
-
Dodaj dashboard. Tygodniowo: PR‑y, % zmerge’owanych, % odrzuconych, % poprawek, średni czas review, $ wydatek, średni rozmiar PR‑a. Z GitHub API i API billingowego do sheeta lub Grafany. Jeśli merged < 60% przez dwa tygodnie — zamroź i przerób rubrykę.
-
Rozszerzaj ostrożnie. 30 dni stabilności na repo #1 → dodaj repo #2. 60 dni → rozważ cap 15 zamiast 10. 90 dni → ewentualnie druga platforma. Każde rozszerzenie obciąża rytuał; nie dodawaj, póki dalej mieści się w 60 minut.
-
Wpisz w kalendarz retrospektywę kwartalną. Ten sam cadence co review polityki narzędzi (Q2). Opublikuj delty; zaktualizuj rubrykę.
Typowe pułapki
Dział zatytułowany „Typowe pułapki”- Brak kuracji — agent bierze cokolwiek. Kierujesz Codex na “open issues”, a on bierze ticket o najbardziej seniorskim brzmieniu, bo ma najwięcej kontekstu. Trzy PR‑y później zjadłeś bandwidth review nie na tym problemie. Nigdy nie odpalaj bez filtra.
- Brak SLA review. Nocne PR‑y się piętrzą, bo nikt ich nie posiada. W piątek masz 60 stalowych PR‑ów od bota, ktoś we frustracji zamyka wszystko. Spisz SLA, wyznacz właściciela, auto‑zamykaj po 24h.
- Runy dotykające wrażliwych ścieżek. Agent edytował middleware auth, żeby dorzucić docstring, i przy okazji poprawił URL redirectu. Łapiesz to, bo klient zauważył. Twarde wykluczenia egzekwuj przed runem, nie po.
- Traktowanie Tier 3 jak Tier 2 + cron. Interaktywni agenci na schedule to nie Tier 3 — to Tier 2 z większą liczbą PR‑ów. Tier 3 wymaga kuracji i porannego rytuału.
- Mega‑PR‑y. Agent fixuje jedną rzecz, a potem “przy okazji” refactoruje sąsiedni plik. 800 linii, miks koncernów. Poinstruuj go w
AGENTS.md/CLAUDE.md; odrzucaj resztę na pierwszy rzut oka. - Brak dashboardu kosztu. Nie wiesz, że nocne runy kosztują 14 USD/PR, dopóki nie przyjdzie faktura. Instrumentuj koszt per zmerge’owany PR od pierwszego tygodnia.
- Ignorowanie outputu AI reviewera. Człowiek przebiega diff, ale nie czyta tego, co flagował CodeRabbit. Cały sens warstwy to zmniejszenie pracy człowieka; ignorowanie podwaja load.
- Zapomniany przełącznik off. Święta, code freeze, release. Nikogo nie ma, a cron dalej odpala. Jeden env var na dispatcherze; on‑call toggluje go.
- Kupno kredytów przed zbudowaniem rytuału. “Kupiliśmy 200 nocnych runów Codex Enterprise” — a porannej rutyny nie ma. Rytuał przed quotą. Zawsze.
Jak zweryfikować, że jesteś tam, gdzie trzeba
Dział zatytułowany „Jak zweryfikować, że jesteś tam, gdzie trzeba”- Nowy inżynier opisze rubrykę
ai-eligiblew jednym akapicie z handbooka, z minimum trzema kategoriami “nigdy”. - W dwóch kliknięciach pokażesz filtr GitHub zwracający wczorajsze PR‑y i ich status CI / AI review.
- Poranny rytuał ma właściciela, slot w kalendarzu i spisany SLA z auto‑close fallbackiem. Slack pinguje właściciela przy slipie.
- Twarde wykluczenia egzekwowane na dispatchu, nie na review. Udowadnialne ticketem “pułapką”, którego agent odmówił.
- Tygodniowy dashboard pokazuje throughput, merge %, rework % i $/zmerge’owany PR. Trendy w dobrą stronę przez 4 tygodnie.
- Merge rate ≥60%. Niżej → zatrzymałeś schedule i zacieśniłeś kurację, z historią zmian.
- AI reviewer (Q9) chodzi na każdym nocnym PR‑ze przed człowiekiem.
- Inżynier wracający z urlopu nie widzi pętli zardzewiałych PR‑ów — auto‑close utrzymał kolejkę czystą.
- Koszt per zmerge’owany PR ograniczony i trackowany. Anomalie (PR > 50 USD) są badane.
- Senior IC z własnej inicjatywy mówi, że nocny pipeline “naprawdę pomaga” — mniej czasu na bumpach dependencji niż pół roku temu.