Usulan tinjauan bersama untuk Clippy yang lebih sehat
(blog.rust-lang.org)- Linter Rust Clippy mengalami kemacetan peninjauan pull request dalam beberapa bulan terakhir, sehingga diperkenalkan prosedur tinjauan bersama agar para kontributor lebih dulu meninjau perubahan satu sama lain
- Karena tidak ada anggota tim Clippy yang didanai untuk pekerjaan pemeliharaan, beban review dan pengelolaan terkonsentrasi pada waktu luang para maintainer, sehingga risiko burnout meningkat
- Dalam prosedur baru, saat kontributor membuka pull request, @rustbot akan mengarahkan mereka untuk lebih dulu melihat pull request lain yang belum mendapat review
- Orang yang meninjau pull request kontributor lain akan masuk ke secret list, dan setelah itu pull request mereka sendiri akan diprioritaskan untuk ditinjau oleh reviewer tim
- Tim Clippy berharap Rust Foundation Maintainers Fund dan partisipasi komunitas dapat membantu mengurangi beban maintainer serta memperbaiki kondisi proyek
Kemacetan review yang dialami Clippy
- Clippy adalah proyek linter Rust tempat banyak kontributor mengirimkan fitur dan perbaikan bug melalui pull request
- Dalam beberapa bulan terakhir, kapasitas review kurang memadai sehingga muncul kemacetan dalam pemrosesan pull request
- Tidak seperti beberapa tim Rust lainnya, saat ini tidak ada seorang pun di tim Clippy yang menerima pendanaan untuk pekerjaan Clippy
- Tidak ada yang didukung bahkan untuk pekerjaan paruh waktu
- Beban pemeliharaan bertumpu pada waktu luang para maintainer
- Struktur seperti ini dapat berujung pada burnout
- Tim berharap Rust Foundation Maintainers Fund yang baru dibentuk dapat membantu menyediakan pendanaan bagi maintainer Clippy
- Siapa pun yang ingin berkontribusi dapat berdonasi melalui Rust Foundation Sponsors
Prosedur saling meninjau antar kontributor
- Tujuan prosedur baru ini adalah agar para kontributor saling membantu sehingga pull request bisa ditinjau dan digabungkan lebih cepat
- Saat kontributor membuka pull request, alurnya akan berjalan dengan lebih dulu melihat pull request kontributor lain
- Setiap kontributor meninjau setidaknya satu pull request
- Ini dirancang agar kontribusi orang lain tidak dibiarkan terlalu lama tanpa perhatian
- @rustbot akan mengarahkan pembuat pull request baru untuk melihat pull request lain
- Jika memungkinkan, prioritas diberikan pada pull request yang belum mendapat review
- Kontributor yang telah menyelesaikan review akan dimasukkan ke secret list khusus
- Setelah itu, pull request mereka sendiri akan diprioritaskan bagi reviewer tim
- Pendekatan ini terinspirasi oleh sistem Open Code Review di proyek Bevy
- Sebelumnya Clippy juga pernah melakukan pembaruan untuk memperbaiki kesehatan proyek
- Feature Freeze pada 2025 berhasil dijalankan
- Dalam proses itu, tim memperoleh pengetahuan, kepercayaan, dan keyakinan bahwa komunitas Rust peduli pada Clippy serta cara kerja yang benar
- Tim Clippy menilai bahwa dengan bantuan komunitas, Clippy bisa menjadi lebih kuat dan lebih sehat
1 komentar
Komentar di Lobste.rs
Sejujurnya, dibanding pengumuman ini sendiri, proses review terbuka Bevy yang ditautkan di tulisan itu lebih menarik. Dulu tulisan ini juga pernah diposting di sini tetapi tidak banyak dibahas, dan menurut saya itu pendekatan yang sangat penuh pertimbangan dan cerdas
Senang mendengar prosesnya berjalan baik, dan itu tidak mengejutkan. Semoga Clippy juga mendapatkan hasil serupa
Sistem ini mendorong PR yang kecil dan bertahap, karena jauh lebih mudah bagi siapa pun, bahkan kontributor pertama kali, untuk melakukan review. PR besar membutuhkan waktu jauh lebih lama untuk digabungkan, dan menurut saya memang seharusnya begitu. Review-nya lebih sulit dan membutuhkan tingkat pemahaman tertentu atas kode. Biasanya PR yang memuat banyak fitur besar didorong sampai selesai oleh maintainer atau pakar di bidang tersebut
Jika Anda menyukai tulisan itu, mungkin Anda juga akan menyukai tulisan tentang pemeliharaan Bevy dari penulis yang sama, yaitu Triage-by-controversy and community review dan The Tyranny of Nits
Salah satu alasan saya tidak banyak membantu review PR di proyek open source tempat saya berkontribusi adalah karena saya hampir tidak punya keahlian, jadi saya tidak yakin apakah saya pantas melakukannya
Proses Clippy dan Bevy memungkinkan reviewer yang kurang berpengalaman ikut serta secara sah, dan menurut saya itu cara yang cukup bagus
Dari judulnya saja, ini agak berbeda dari yang saya harapkan
Sepertinya mudah disalahgunakan dengan membuat beberapa akun lalu mengirim PR dari banyak akun
Saya tidak begitu tahu apa yang bisa didapat dari itu, tetapi masuk ke daftar rahasia para kontributor keren bisa menjadi insentif tersendiri
Ini berjalan paling baik ketika para kontributor mengerjakan proyek yang sama, tetapi saya juga pernah melihatnya dilakukan untuk pekerjaan yang tidak berkaitan. Semoga Clippy juga membangun praktik serupa. Pertukaran review membuat pekerjaan lebih cepat digabungkan dan menumbuhkan komunitas yang kolaboratif
Namun, paragraf di posting blog ini yang memperkenalkan mekanisme review bisa diperbaiki. Saat ini terbaca seperti “kalau kamu menengok sekilas PR lain, PR kamu akan kami gabungkan lebih cepat”, padahal saya rasa itu bukan pesan yang dimaksud. Sebaiknya fokusnya diarahkan pada bekerja bersama kolaborator lain. Jika orang-orang diarahkan ke kanal Zulip Clippy untuk mengusulkan pertukaran review dan bekerja bersama dalam proyek yang sama, itu bisa membangun komunitas yang lebih sehat tanpa mendorong penyalahgunaan sistem
Keduanya tampaknya bisa dihindari dengan cukup mudah lewat cara berikut: pasangan review ditentukan secara acak agar seseorang tidak mereview pekerjaan orang yang sama berkali-kali, dan hanya review atas PR yang akhirnya digabungkan yang dihitung
Saya menjalankan https://www.CodeTriage.com sebagai layanan untuk membantu review PR dan issue orang lain