5
Proses Kontribusi
contributing.md memuat seluruh aturan partisipasi untuk repository ini. Dokumen itu membagi kontribusi menjadi tiga jalur: membuat issue, mengirim pull request, dan ikut voting atau berkomentar di GitHub Discussions. Tidak ada pipeline di luar GitHub; setiap jalur berjalan lewat issue, pull request, dan diskusi di platform tersebut. contributing.md:5-171
Tiga jalur masuk
| Jalur | Kanal | Yang diharapkan |
|---|---|---|
| Issue baru | issue tracker Kristories/awesome-guidelines | Mengusulkan panduan yang belum tercantum di daftar |
| Pull request | pull request ke master | Mengerjakan issue terbuka atau mengirim tautan baru |
| Voting dan komentar | GitHub Discussions, kategori Resource suggestions | Memberi suara dan umpan balik atas usulan |
Ketiga jalur di atas adalah isi bagian "How Can I Contribute?" pada contributing.md:7-172. Perhatikan bahwa dukungan untuk berkontribusi tidak berhenti di issue dan pull request: kategori diskusi tersendiri dipakai sebagai kanal usulan sumber daya.
Urutan interaksi kontributor dan maintainer
Alur di bawah menggabungkan dua jalur utama, yaitu mencari duplikat lewat issue lalu mengirim pull request yang melewati lint sebelum diputuskan maintainer.
sequenceDiagram
autonumber
participant C as Contributor
participant I as Issue
participant P as Pull Request
participant L as Lint workflow
participant M as Maintainer
C->>I: cek issue serupa sebelum mengusulkan tautan
I-->>C: daftar issue terbuka
rect rgb(245, 158, 11)
C->>P: buka pull request berisi satu tautan
end
P->>L: event pull_request ke master
L-->>P: jalankan npx awesome-lint
rect rgb(220, 38, 38)
L-->>C: lint gagal dan commit perbaikan
end
rect rgb(45, 125, 70)
L-->>M: lint lulus dan siap direview
M-->>C: merge
end
%% fig: Alur kontribusi dari issue sampai merge
%% desc: Kontributor memeriksa issue, membuka pull request satu tautan, lalu lint dan maintainer menentukan hasil akhirnya.Langkah event pull_request ke master bukan pilihan kontributor: workflow Lint hanya dipicu oleh pull request yang menyasar master, dan langkah satu-satunya di dalamnya adalah npx awesome-lint. .github/workflows/lint.yml:1-143
Satu tautan per pull request
Aturan paling menentukan dalam alur ini adalah Add one link per pull-request. Satu pull request yang hanya menambah satu tautan mudah ditinjau dan mudah dibatalkan bila salah. Sebelum mengirim, aturan lain meminta pencarian saran sebelumnya agar tidak duplikat: Please search previous suggestions before making a new one, as yours may be a duplicate. contributing.md:21-274
| Butir | Aturan di contributing.md |
|---|---|
| Cari usulan lama | pencarian sebelum membuat usulan baru |
| Jumlah tautan | satu tautan per pull request |
| Ejaan dan tata bahasa | diperiksa sebelum kirim |
| Kategori baru | dipersilakan, termasuk perbaikan kategori lama |
| Whitespace | editor diatur agar menghapus trailing whitespace |
Butir di atas adalah bagian proses, sedangkan aturan bentuk entri seperti [Title](url) - Description. dan pengurutan alfabetis dibahas terpisah di Format Entri dan Pengurutan. contributing.md:22-315
Template pull request
Berkas template hanya berisi satu paragraf dan satu baris penanda. Paragraf itu bukan kolom isian, melainkan pernyataan yang otomatis muncul di badan setiap pull request baru:
By submitting this pull request, I promise I have read the contribution guidelines twice and ensured my submission follows it. I realize not doing so wastes the maintainers' time that they could have spent making the world better. 🖖
Setelah paragraf itu hanya ada deretan panah ke atas, tanpa bagian checklist atau pertanyaan tambahan. .github/pull_request_template.md:1-36 Karena template tidak memuat daftar periksa, kepatuhan pada contributing.md sepenuhnya bergantung pada pembacaan dokumen itu oleh kontributor dan pada review maintainer.
Review dan status menganggur
Hasil lint bukan satu-satunya penentu. Setelah lint, maintainer yang memutuskan merge atau meminta perubahan. Pull request yang dibiarkan tanpa aktivitas akan ditandai dan kemudian ditutup otomatis oleh workflow Mark stale issues and pull requests, yang berjalan sekali sehari lewat cron 59 23 * * *. .github/workflows/stale.yml:3-217
| Parameter | Nilai | Akibat bagi kontributor |
|---|---|---|
days-before-stale | 20 | issue atau pull request ditandai setelah 20 hari tanpa aktivitas |
days-before-close | 1 | objek ditutup satu hari setelah ditandai |
stale-issue-label | no-issue-activity | label pada issue yang menganggur |
stale-pr-label | no-pr-activity | label pada pull request yang menganggur |
⚠️ Pull request tanpa komentar selama 20 hari ditandai
no-pr-activity, lalu ditutup satu hari kemudian. Komentari atau rebase pull request sebelum tenggat itu habis.
Detail gate otomatis dan aturan lint ada di Quality Gate dan CI. Kebijakan pemeliharaan, termasuk tindakan maintainer terhadap kontribusi berulang yang berkualitas rendah, ada di Tata Kelola dan Pemeliharaan. Batas mutu untuk proyek yang boleh masuk daftar cukup singkat: Widely used and beneficial to the community. contributing.md:35-378