Workflow automatyzacji Pull Request
Proces PR w twoim zespole stal sie waskim gardlem. PR-y czekaja dwa dni na recenzje. Gdy recenzje wreszcie nastepuja, wylapuja problemy wymagajace drugiej rundy. Kolejne commity psuja CI, co wymaga kolejnego cyklu recenzji. Pojedyncza funkcja potrzebuje tygodnia od “ready for review” do “merged”. Z Codex mozesz zautomatyzowac kazdy krok: tworzyc PR-y z worktree, otrzymywac natychmiastowa recenzje AI, naprawiac awarie CI bez opuszczania GitHub i przygotowywac PR-y do finalnej ludzkiej recenzji z wszystkimi problemami wstepnie rozwiazanymi.
Co wyniesiesz z tej lekcji
Dział zatytułowany „Co wyniesiesz z tej lekcji”- Pipeline worktree-do-PR tworzacy PR-y bezposrednio z Codex App
- Wzorce
@codexdo naprawiania awarii CI i zamawiania recenzji na GitHub - Workflow GitHub Action do automatycznej recenzji na kazdym PR
- Techniki laczenia automatycznej i ludzkiej recenzji
Workflow
Dział zatytułowany „Workflow”Krok 1: Twroz PR-y z watkow Worktree
Dział zatytułowany „Krok 1: Twroz PR-y z watkow Worktree”Gdy watek worktree Codex zakonczy swoje zadanie, mozesz przejsc od diffa do otwartego PR bez opuszczania App. To najszybsza droga od implementacji do recenzji.
W Codex App, po zakonczeniu watku worktree:
- Przejrzyj diff w panelu recenzji. Dodaj zmiany, ktore chcesz, cofnij te, ktorych nie chcesz.
- Kliknij Create branch here, aby zamienic worktree w nazwana galaz.
- Commituj dodane zmiany z opisowa wiadomoscia.
- Wypchnij galaz na remote za pomoca przycisku push.
- Otworz pull request bezposrednio z App.
Aby PR byl tworzony automatycznie, mozesz tez zlecic to Codex:
Krok 2: Automatyczna recenzja z @codex
Dział zatytułowany „Krok 2: Automatyczna recenzja z @codex”Gdy PR jest otwarty na GitHub, otrzymaj natychmiastowy feedback bez czekania na ludzkiego recenzenta.
Skomentuj PR:
@codex reviewCodex reaguje emoji oczu, analizuje caly diff i publikuje standardowa recenzje kodu GitHub z komentarzami inline. Recenzja obejmuje poprawnosc, bezpieczenstwo i utrzymywalnosc na podstawie wytycznych recenzji z twojego AGENTS.md.
Dla ukierunkowanych recenzji dodaj instrukcje:
@codex review with focus on:- Database query performance (check for missing indexes and N+1 patterns)- Error handling completeness- API backward compatibilityKrok 3: Naprawiaj awarie CI bez opuszczania GitHub
Dział zatytułowany „Krok 3: Naprawiaj awarie CI bez opuszczania GitHub”Gdy CI nie przejdzie na twoim PR, nie musisz pobierac galezi lokalnie, szukac co sie zepsulo, naprawiac i wypychac ponownie. Skomentuj PR:
Codex tworzy zadanie chmurowe, ktore:
- Czyta diff PR i logi awarii CI
- Identyfikuje przyczyne zrodlowa
- Proponuje poprawke
- Publikuje wyniki z powrotem na PR z linkiem do zadania chmurowego
Jesli poprawka obejmuje zmiany w kodzie, mozesz utworzyc nowy PR z zadania chmurowego celujacy w twoja galaz funkcji. Lub otworz zadanie chmurowe, przejrzyj diff i zastosuj zmiany recznie.
Dla konkretnych awarii CI:
@codex The TypeScript type check fails because the new NotificationPreference interface is missing the updatedAt field that the migration added. Fix the type definition and any related code.Krok 4: Sprzatanie przed recenzja z Codex App
Dział zatytułowany „Krok 4: Sprzatanie przed recenzja z Codex App”Przed poproszeniem o ludzka recenzje uzyj Codex App do wyczyszczenia typowych problemow. Otworz watek Local z twoja galezi funkcji:
Review all changes on this branch compared to main. Check for:
1. Any TODO comments that should be resolved before merging2. Console.log or debugging statements left in production code3. Missing or incomplete test coverage for new functions4. Unused imports or dead code5. Inconsistent error handling patterns
Fix any issues you find. Run the test suite after each fix.Nastepnie uzyj /review w CLI, aby zweryfikowac sprzatanie:
/review Focus on merge readiness. Is this PR ready for human review? Flag anything a reviewer would send back for changes.Krok 5: Zautomatyzuj caly pipeline
Dział zatytułowany „Krok 5: Zautomatyzuj caly pipeline”Polacz GitHub Action z @codex review dla w pelni zautomatyzowanego pipeline PR:
name: PR Pipelineon: pull_request: types: [opened, synchronize, reopened]
jobs: # Step 1: Standard CI checks ci: runs-on: ubuntu-latest steps: - uses: actions/checkout@v5 - run: npm ci - run: npm run type-check - run: npm run lint - run: npm test
# Step 2: Codex review (runs in parallel with CI) codex-review: runs-on: ubuntu-latest permissions: contents: read pull-requests: write steps: - uses: actions/checkout@v5 with: ref: refs/pull/${{ github.event.pull_request.number }}/merge - name: Fetch refs run: | git fetch --no-tags origin \ ${{ github.event.pull_request.base.ref }} \ +refs/pull/${{ github.event.pull_request.number }}/head - uses: openai/codex-action@v1 with: openai-api-key: ${{ secrets.OPENAI_API_KEY }} prompt-file: .github/codex/prompts/review.md sandbox: read-only safety-strategy: drop-sudo
# Step 3: Post combined results summary: needs: [ci, codex-review] if: always() runs-on: ubuntu-latest permissions: pull-requests: write steps: - name: Post status summary uses: actions/github-script@v7 with: script: | const ci = '${{ needs.ci.result }}'; const review = '${{ needs.codex-review.result }}'; const body = `## PR Pipeline Summary\n\n` + `| Check | Status |\n|---|---|\n` + `| CI (lint, types, tests) | ${ci} |\n` + `| Codex Review | ${review} |\n`; await github.rest.issues.createComment({ ...context.repo, issue_number: context.payload.pull_request.number, body });Wlaczanie automatycznych recenzji
Dział zatytułowany „Wlaczanie automatycznych recenzji”Dla zespolow, ktore chca recenzji na kazdym PR bez recznych komentarzy @codex review, wlacz Automatic reviews w ustawieniach Codex na chatgpt.com/codex/settings/code-review. Po wlaczeniu Codex publikuje recenzje na kazdym PR otwartym do recenzji, zachowujac sie jak dedykowany recenzent zespolowy.
Gdy cos sie nie uda
Dział zatytułowany „Gdy cos sie nie uda”Recenzja Codex i ludzka recenzja sa sprzeczne. Jesli Codex mowi “to jest ok”, a ludzki recenzent mowi “zmien to”, czlowiek wygrywa. Sprecyzuj to w procesie zespolu: recenzja Codex wylapuje oczywiste problemy wczesnie; ludzka recenzja zajmuje sie osadami architektonicznymi i poprawnosciia logiki biznesowej.
Tworzenie PR z worktree nie udaje sie z powodu konfliktow galezi. Jesli twoj worktree zostal utworzony z galezi, ktora od tamtej pory otrzymala nowe commity, PR moze miec konflikty. Przed utworzeniem PR zsynchronizuj worktree z najnowsza galezi bazowa za pomoca zintegrowanego terminala: git fetch origin main && git rebase origin/main.
@codex fix tworzy poprawke na zlej galezi. Zadania chmurowe domyslnie korzystaja z domyslnej galezi repozytorium. Gdy komentujesz @codex fix na PR, Codex powinien pracowac na galezi PR, ale zweryfikuj, czy powstale zmiany celuja w odpowiednia galaz.
Zbyt wiele automatycznych komentarzy na jednym PR. Jesli zarowno GitHub Action, jak i @codex review sie uruchamiaja, plus Codex publikuje propozycje poprawek, PR moze stac sie halasliwy. Wybierz jeden mechanizm recenzji: albo GitHub Action dla recenzji zintegrowanej z CI, albo @codex review (lub automatyczne recenzje) dla recenzji na zadanie. Nie uruchamiaj obu jednoczesnie.