Conversation
✅ Deploy Preview for docs-kargo-io ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #6077 +/- ##
==========================================
+ Coverage 57.44% 57.64% +0.20%
==========================================
Files 474 482 +8
Lines 40230 40954 +724
==========================================
+ Hits 23110 23609 +499
- Misses 15745 15920 +175
- Partials 1375 1425 +50 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
@hairyhum had a suggestion to add changing a PR to/from draft status would be another useful action. I will add that. |
Signed-off-by: Kent Rancourt <kent.rancourt@gmail.com>
Signed-off-by: Kent Rancourt <kent.rancourt@gmail.com>
1c0de32 to
ecf7e7d
Compare
Signed-off-by: Kent Rancourt <kent.rancourt@gmail.com>
Signed-off-by: Kent Rancourt <kent.rancourt@gmail.com>
Signed-off-by: Kent Rancourt <kent.rancourt@gmail.com>
Signed-off-by: Kent Rancourt <kent.rancourt@gmail.com>
Signed-off-by: Kent Rancourt <kent.rancourt@gmail.com>
Signed-off-by: Kent Rancourt <kent.rancourt@gmail.com>
Signed-off-by: Kent Rancourt <kent.rancourt@gmail.com>
|
Added several improvements:
|
|
Reminder to self: Implement a way to optionally exempt PRs from policy based on miniscule size or being a docs-only change. |
Supersedes #6065
Summary
This PR is a significant overhaul of how contributions to Kargo are governed.
1. Contributor docs
Updated the Contributor Guide to more clearly describe the issue-first contribution model: contributors open an issue, maintainers review and unblock it, and only then is a pull request welcome. The guide spells out the conditions under which work on an issue may proceed.
2. Issue and PR templates
The old Markdown issue templates have been replaced with structured YAML forms for bug reports and feature requests. A new PR template sets expectations up front — linked issue, scope, quality bar.
3. Governance bot
Replaces the Birthday Research oss-governance-bot GitHub Action and adds a substantial crop of new capabilities.
This is also substantially more lightweight than alternatives like prow.
High-level features:
PR policy enforcement: PRs without a linked issue — or linked to a blocked issue — are automatically closed with an explanatory comment. Maintainers and bots are exempt. (The old bot did not do this.)
Label governance: new issues and PRs that lack required label prefixes (
area/,kind/,priority/) get aneeds/<prefix>label added automatically. (This is roughly the extent of what the old bot did.)Automatic PR assignment: new PRs are automatically assigned to their author. (The old bot did not do this.)
Label inheritance: new PRs inherit
kind/*andarea/*labels from their linked issue so classification carries through. (The old bot did not do this.)Slash commands: maintainers can drive triage with commands like
/discuss,/research,/maintainer,/duplicate #N,/enterprise,/unblock,/premature,/quality,/unsolicited, and a context-aware/help. Multiple commands per comment are supported.Behavior is driven entirely by
.github/governance.yamlstraight from the repo'smainbranch. Adding a new slash command, changing a canned message, adjusting blocking labels, or tweaking PR policy is a config change that does not require the bot to be re-deployed.4. Deployment
The bot is intended to run as an AWS Lambda behind a Function URL.
It must be deployed and wired into a new GitHub App before this PR is merged.
Labels to create
Two new labels need to exist on
akuity/kargobefore merge:policy/no-linked-issuepolicy/blocked-issueAll other labels referenced by the config already exist.
Testing
Extensively tested end-to-end on krancovia/kargo.
Demo
I'll provide a live demo later in the week.