Bahasa Indonesia

Tinjau merge request GitLab dengan Codex

Siapkan tinjauan kode untuk merge request GitLab dan minta peninjauan dengan @codex review.

Gunakan peninjauan kode Codex untuk mendapatkan tahap peninjauan tambahan yang sangat relevan pada merge request GitLab. Codex meninjau diff merge request, mengikuti panduan repositori Anda, dan memposting peninjauan kode GitLab standar yang berfokus pada masalah serius.

Dukungan GitLab tersedia dalam versi beta dan tersedia pada semua paket ChatGPT. Integrasi Codex berjalan di cloud Codex. Kontrol repositori bergaya GitHub di aplikasi desktop, seperti Create pull request, tidak disertakan dalam versi beta ini.

Sebelum memulai

Pastikan Anda memiliki:

Siapkan peninjauan kode Codex

Siapkan koneksi GitLab dan identitas peninjauan Codex

Untuk GitLab.com, hubungkan akun GitLab Anda di Codex setelah Anda terhubung ke GitLab di ChatGPT. Untuk GitLab yang dikelola sendiri atau Dedicated, setiap peninjau harus terhubung setelah templat admin ruang kerja dipublikasikan.

Untuk GitLab yang dikelola sendiri atau Dedicated, buka Codex CloudSettingsConnectors. Admin ruang kerja dapat mengizinkan Codex membuat akun layanan atau menyimpan token akses pribadi milik akun layanan yang sudah ada.

Izinkan Codex membuat akun

Di Codex CloudSettingsConnectors, pilih aplikasi untuk host GitLab yang dikelola sendiri atau Dedicated → pilih Set up service accountCreate a service account. Admin ruang kerja yang menyelesaikan penyiapan harus memiliki akses administrator ke instans GitLab. Pilih Selected groups atau Selected projects only, lalu pilih tempat Codex harus beroperasi dan buat akunnya. Opsi grup memberikan akses Developer ke setiap grup yang dipilih, yang diwarisi oleh proyek dan subgrupnya; opsi proyek memberikan akses Developer hanya ke masing-masing proyek yang Anda pilih. Codex akan membuat akun layanan instans ChatGPT Codex Connector dengan token akses pribadi yang memiliki cakupan api.

Gunakan akun yang sudah ada

Di GitLab, buat atau pilih akun layanan dan berikan akses Developer hanya di grup atau proyek tempat Codex harus beroperasi. Dari halaman Service accounts, pilih akun → Manage access tokensAdd new token untuk membuat token akses pribadi dengan cakupan api dan tanggal kedaluwarsa setidaknya 30 hari lagi. Kembali di Codex, pilih Use an existing service account, tempelkan token, lalu pilih Save token. Token dienkripsi saat disimpan dan tidak pernah ditampilkan lagi.

Kelola token akun layanan

Admin ruang kerja dapat mengelola akun layanan di Codex CloudSettingsConnectors. Untuk akun yang dibuat Codex, admin dapat mencabut token saat ini dan membuat token baru. Untuk akun yang sudah ada, admin dapat mengganti atau menghapus token yang tersimpan di Codex dan mencabutnya secara terpisah di GitLab jika diperlukan. Codex tidak dapat merespons aktivitas GitLab hingga token yang valid dikonfigurasi.

Pilih cara aktivitas GitLab diteruskan ke Codex

Buat lingkungan proyek untuk tugas pengodean atau penyiapan khusus proyek

Di Codex CloudSettingsEnvironments, pilih proyek GitLab dan buat lingkungan proyek saat Anda ingin Codex menulis atau mengeksekusi kode untuk proyek tersebut—misalnya, untuk mengedit file, melakukan commit perubahan, atau mendorong pembaruan ke branch merge request—atau saat peninjauan bergantung pada rahasia khusus proyek, akses jaringan, atau perintah penyiapan.

Untuk GitLab.com, lingkungan proyek juga diperlukan untuk mengaktifkan peninjauan Codex.

Saat membuat lingkungan, aktifkan Enable Codex activity from GitLab untuk memasang webhook proyek yang mengirimkan peristiwa merge request, komentar, dan issue ke Codex. Pembuatan webhook proyek memerlukan akses Maintainer atau Owner, akses administrator, atau peran khusus yang dapat mengelola webhook proyek. Webhook proyek dan grup yang ditandatangani memerlukan GitLab 19.0 atau yang lebih baru. Pada GitLab 19.0 yang dikelola sendiri, pastikan feature flag webhook_signing_token diaktifkan; flag ini diaktifkan secara default dan dihapus pada GitLab 19.1.

Aktifkan aktivitas untuk peninjauan Codex bagi proyek di seluruh grup GitLab

Untuk GitLab yang dikelola sendiri atau Dedicated, admin ruang kerja dapat membuka EnvironmentsGitLab activityManage groups untuk mengaktifkan peninjauan Codex di seluruh grup dan subgrupnya. Codex akan memasang webhook grup yang mencakup proyek di seluruh grup tersebut. Pengguna GitLab yang terhubung harus menjadi Owner grup, dan webhook grup memerlukan GitLab Premium atau Ultimate serta GitLab 19.0 atau yang lebih baru.

Aktivitas grup mengaktifkan peninjauan kode tetapi tidak membuat lingkungan proyek. Untuk menjalankan tugas pengodean yang dipicu GitLab, seperti mengedit file, menjalankan perintah, melakukan commit perubahan, atau mendorong pembaruan ke merge request, buat lingkungan proyek.

Konfigurasikan kebijakan peninjauan kode

Konfigurasikan kebijakan peninjauan kode di pengaturan peninjauan Codex. Pilih kebijakan repositori: Review my MRs, Review team MRs, Review all MRs, atau Follow personal. Kemudian pilih kapan peninjauan dijalankan: On MR open, On every push, atau Smart Trigger (Experimental). Pengaturan repositori dapat menggantikan default pribadi.

Minta peninjauan Codex

  1. Dalam komentar merge request, sebutkan @codex review.
  2. Tunggu Codex memberikan reaksi (👀) dan memposting peninjauan.

Codex memposting diskusi dan catatan GitLab pada merge request, sama seperti yang dilakukan rekan satu tim. Secara default, peninjauan yang diminta secara manual dapat menyertakan temuan P0, P1, dan P2, sedangkan peninjauan otomatis berfokus pada temuan P0 dan P1.

Aktifkan peninjauan otomatis

Untuk meninjau merge request yang memenuhi syarat secara otomatis, aktifkan Automatic reviews di pengaturan Codex, pilih kebijakan repositori GitLab, lalu pilih pemicu: On MR open, On every push, atau Smart Trigger (Experimental). Codex berjalan tanpa komentar @codex review ketika peristiwa merge request sesuai dengan kebijakan dan pemicu tersebut.

Aktivitas GitLab harus diaktifkan melalui webhook proyek atau webhook grup leluhur. Untuk GitLab yang dikelola sendiri atau Dedicated, akun layanan yang dikonfigurasi juga harus memiliki akses untuk menulis kembali ke proyek. Codex menggunakan lingkungan proyek yang dikonfigurasi jika tersedia. Jika grup leluhur sudah mengaktifkan aktivitas, proyek turunannya mewarisi cakupan tersebut.

Sesuaikan hal yang ditinjau Codex

Codex mencari file AGENTS.md dalam repositori Anda dan mengikuti aturan peninjauan kode yang berlaku. Tambahkan bagian ## Code Review Rules ke file yang paling dekat dengan kode yang diatur oleh aturan tersebut. Gunakan judul ### untuk mengelompokkan pemeriksaan terkait jika bermanfaat.

Sebagai contoh, layanan pelaporan eksperimen dapat mencegah perilaku setelah paparan mengubah kohor pembanding:

## Code Review Rules

### Experiment cohorts

- Do not filter treatment comparisons on post-exposure behavior, including conversion or retention.
  Safe path: build cohorts from assignment or exposure; report conversion as an outcome.

Tempatkan aturan untuk seluruh repositori di AGENTS.md tingkat root dan aturan khusus layanan di file bertingkat, seperti services/experiment_reporting/AGENTS.md. Codex menerapkan panduan tingkat root dan panduan yang lebih spesifik yang mencakup setiap file yang diubah, sehingga perubahan yang tidak terkait tidak perlu membawa konteks khusus layanan.

Mulailah dengan dua atau tiga aturan ringkas yang merumuskan pemeriksaan yang sering dijelaskan oleh peninjau. Aturan yang berguna:

  • Berfokuslah pada perilaku penting yang khusus untuk repositori. Jelaskan batasan kompatibilitas, batas data, atau efek samping tidak aman yang perlu ditandai dan alasan hal tersebut penting.
  • Nyatakan jalur aman atau pengecualiannya. Berikan konteks yang cukup kepada Codex untuk membedakan masalah nyata dari perilaku yang diharapkan.
  • Jaga agar aturan tetap terlingkup dan tahan lama. Utamakan hasil daripada nama fungsi yang dapat berubah, dan tempatkan panduan di dekat kode yang diaturnya.
  • Serahkan pemeriksaan mekanis kepada CI. Jangan sertakan pemformatan, lint, dan pemeriksaan deterministik lainnya dalam aturan peninjauan.

Buka merge request yang representatif dan minta peninjauan dengan @codex review. Sempurnakan aturan berdasarkan temuan dan umpan balik yang Anda lihat, serta persempit atau hapus panduan yang menghasilkan gangguan.

Aturan peninjauan kode memandu Codex; aturan tersebut tidak menggantikan pengujian, perlindungan branch, atau persetujuan wajib.

Untuk fokus satu kali, tambahkan fokus tersebut ke komentar merge request Anda:

@codex review for issues in the database migration

Tindak lanjuti temuan peninjauan

Memperbaiki temuan peninjauan memerlukan lingkungan proyek yang dikonfigurasi; aktivitas grup saja mendukung peninjauan tetapi tidak dapat menjalankan tugas pengodean. Jika proyek memiliki lingkungan, minta Codex memperbaiki masalah dalam merge request yang sama dengan meninggalkan komentar lain:

@codex fix the P1 issue

Codex memulai chat cloud dengan merge request sebagai konteks dan dapat mendorong perbaikan kembali ke branch jika memiliki izin untuk melakukannya.

Berikan tugas lain kepada Codex

Tugas pengodean lainnya juga memerlukan lingkungan proyek yang dikonfigurasi; aktivitas grup saja mendukung peninjauan. Jika Anda menyebutkan @codex dalam komentar dengan apa pun selain review, Codex memulai chat cloud dengan merge request Anda sebagai konteks.

@codex fix the CI failures

Pecahkan masalah peninjauan kode

Jika Codex tidak memberikan reaksi atau memposting peninjauan:

  • Pastikan aplikasi GitLab yang dimaksud telah dipilih; jika Anda menggunakan penyiapan khusus proyek, pastikan proyek memiliki lingkungan cloud Codex yang dimaksud.
  • Pastikan aktivitas untuk proyek atau grup leluhur. Di GitLab, periksa WebhooksRecent events dan verifikasi bahwa pengiriman merge request dan catatan berhasil.
  • Untuk GitLab yang dikelola sendiri atau Dedicated, pastikan webhook proyek atau grup ditandatangani, verifikasi SSL diaktifkan, dan instans menggunakan GitLab 19.0 atau yang lebih baru. Pada GitLab 19.0 yang dikelola sendiri, pastikan feature flag webhook_signing_token diaktifkan; perbaiki hook yang dinonaktifkan secara otomatis setelah terjadi kegagalan.
  • Untuk GitLab yang dikelola sendiri atau Dedicated, pastikan token akses pribadi akun layanan yang sudah ada masih aktif dan memiliki cakupan api. Jika Codex membuat akun layanan, pastikan akun tersebut dikonfigurasi dengan benar di pengaturan konektor Codex dan proyek atau grup telah diaktifkan.
  • Untuk GitLab yang dikelola sendiri atau Dedicated, pastikan akun layanan ruang kerja—bukan hanya pengguna GitLab yang terhubung—memiliki akses Developer ke proyek atau grup induk agar Codex dapat memposting peninjauan dan reaksi. Keanggotaan diwarisi; aktivitas dan akses akun layanan merupakan hal yang terpisah.
  • Pastikan Code review atau Automatic reviews diaktifkan dan MR sesuai dengan kebijakan serta pemicu repositori.
  • Gunakan @codex review.