From a167f1b7229e63020e17042e1f0c836e502decd3 Mon Sep 17 00:00:00 2001 From: Anastassios Nanos Date: Mon, 10 Aug 2026 16:44:30 +0300 Subject: [PATCH 1/3] docs: Strengthen contribution rules for issues and PRs Following an increase of drive-by issues and PRs, mostly around mentorship program cycles, we should make the contribution rules more explicit: - Bug reports must come with actual logs and command output. Issues that only describe code the reporter has read stay unlabeled and are closed if the information is not provided. - We use labels to track triage, so an issue with no labels has not been accepted yet. PRs are expected to reference an issue that a maintainer has already labeled. - Contributors should add themselves in .github/contributors.yaml, so that the automation can add the proper git trailers. - Please do not @-mention maintainers right after opening an issue. - Point mentorship applicants to the LFX Standards of Excellence and keep the mentorship label as the only marker of such work. - Anyone who keeps ignoring the guide will be banned from the project. PR: https://github.com/urunc-dev/urunc/pull/839 Signed-off-by: Anastassios Nanos Reviewed-by: Charalampos Mainas Approved-by: Charalampos Mainas --- docs/developer-guide/contribute.md | 45 ++++++++++++++++++++++++++++-- 1 file changed, 43 insertions(+), 2 deletions(-) diff --git a/docs/developer-guide/contribute.md b/docs/developer-guide/contribute.md index 795c81b4e..6ca07d677 100644 --- a/docs/developer-guide/contribute.md +++ b/docs/developer-guide/contribute.md @@ -59,6 +59,18 @@ welcome to open a new issue, which is either related to a bug or a request for a new feature. Please make sure to read the [LLM policy](../developer-guide/llm-policy.md) in cases where an LLM has been used. +Please keep in mind that `urunc` is a community-led open-source project, not +backed by a specific company. Maintainers review issues on a best-effort basis. +Therefore, please refrain from @-mentioning maintainers when opening an issue +or shortly after opening it. The maintainers will get to the issue as soon as +they can. + +When a maintainer goes through an issue, they will label it accordingly. We +use the labels to track triage, so an issue with no labels on it has not been +accepted yet. Issues that lack the necessary information to reproduce or +verify the reported problem will stay unlabeled, until that information shows +up. If it never does, we will close the issue. + ### Reporting bugs In order to report a bug or misbehavior in `urunc`, a user can open a new issue explaining the problem. @@ -76,6 +88,13 @@ In that context, when opening a new issue regarding a bug, we kindly ask you to: 5. Any particular steps to reproduce the issue. - Keep an eye on the issue for possible questions from the maintainers. +Bug reports must describe a problem that the reporter has actually run into +and reproduced. In that context, the logs and the output of the failing +commands are required, not optional -- they are the evidence that the problem +is real. Issues that only describe code the reporter has read, without +executing it and without the respective output, will stay unlabeled and will +be closed if the missing information is not provided. + A template for an issue could be the following one: ``` ## Description @@ -90,6 +109,10 @@ An explanation of the issue ## Steps to reproduce A list of steps that can reproduce the issue. + +## Logs / output +The actual output of the failing commands and the relevant logs +(eg. containerd logs, urunc debug logs). ``` ### Requesting new features @@ -105,8 +128,13 @@ Anyone should feel free to submit a change or an addition to the codebase of `ur Currently, we use GitHub's Pull Requests (PRs) to submit changes to `urunc`'s codebase. Before creating a new PR, please follow the rules below: -- Avoid opening PRs for non-existent issues. Please create an issue first. +- Open PRs only for issues that a maintainer has already labeled. If there is + no issue for the change you have in mind, please open one first and wait for + the maintainers to go through it. - Complete the PR template. +- Add yourself in + [`.github/contributors.yaml`](https://github.com/urunc-dev/urunc/blob/main/.github/contributors.yaml). + We use that file to add the proper git trailers in the commits of a PR. - In case LLMs have been used, please read the [LLM policy](../developer-guide/llm-policy.md). - Avoid changes unrelated to the PR/issue. @@ -122,7 +150,8 @@ Before creating a new PR, please follow the rules below: The maintainers and admins of the `urunc` project reserve the right to close PRs that do not comply with the above rules, with reference to this contribution -guide. +guide. In the same context, anyone who keeps ignoring this guide will be +banned from the project. A new (draft) PR triggers the following process: @@ -141,6 +170,18 @@ A new (draft) PR triggers the following process: the action to be triggered. If the PR is internal, the action will be triggered automatically. +### A note on mentorship programs + +We are always happy to see new contributors, including people who get involved +through a mentorship program (eg. LFX). If this is your case, please go through +the [LFX Standards of +Excellence](https://docs.linuxfoundation.org/lfx/mentorship/standards-of-excellence) +first. + +In case `urunc` takes part in a mentorship term, the relevant issues will be +explicitly marked with a `mentorship` label. Unless an issue carries that +label, please avoid opening issues or PRs related to mentorship programs. + ## Labels for the CI We use GitHub workflows to invoke some tests when a new PR opens for `urunc`. From 5265991105cbb9d30341130a2c7bc3413ee6370a Mon Sep 17 00:00:00 2001 From: Anastassios Nanos Date: Mon, 10 Aug 2026 16:44:33 +0300 Subject: [PATCH 2/3] ci: Exempt maintainer-triaged items from the stale bot At the moment the stale bot marks and closes items that maintainers have already triaged, while unverified reports sit in the queue unaffected. Exempt the mentorship label for issues, along with the PRs that a maintainer has engaged with (ok-to-test, takeover). Unlabeled items, eg. reports pending the information to reproduce them, keep the current 60+15 day cycle. PR: https://github.com/urunc-dev/urunc/pull/839 Signed-off-by: Anastassios Nanos Reviewed-by: Charalampos Mainas Approved-by: Charalampos Mainas --- .github/workflows/stale.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 7f94329ba..06f7a83a0 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -29,4 +29,5 @@ jobs: days-before-pr-stale: 60 days-before-issue-close: 15 days-before-pr-close: 15 - exempt-issue-labels: 'design,dev,enhancement,documentation,bug,feature' + exempt-issue-labels: 'design,dev,enhancement,documentation,bug,feature,mentorship' + exempt-pr-labels: 'ok-to-test,takeover' From 44863f5af39bfbefd29f1dd17d589ad8eb2a294c Mon Sep 17 00:00:00 2001 From: Anastassios Nanos Date: Sun, 19 Jul 2026 18:21:18 +0300 Subject: [PATCH 3/3] ci: Fail the build and unit test workflows on errors The build and unit-test jobs run with a job-level continue-on-error, so a PR shows a green check even when it does not compile or its tests fail. For instance, the branch of an open PR currently fails to build, while its checks appear green. Remove the flag so that CI failures are visible in the PR checks. The build-latest and upload_s3 workflows are left untouched, as they do not gate PRs. PR: https://github.com/urunc-dev/urunc/pull/839 Fixes: #729 Signed-off-by: Anastassios Nanos Reviewed-by: Charalampos Mainas Approved-by: Charalampos Mainas --- .github/workflows/build.yml | 1 - .github/workflows/unit_test.yml | 1 - 2 files changed, 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d27ef6664..631043c67 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -31,7 +31,6 @@ jobs: runner: ubuntu-22.04 - arch: arm64 runner: ubuntu-22.04-arm - continue-on-error: true steps: - name: Harden the runner (Audit all outbound calls) diff --git a/.github/workflows/unit_test.yml b/.github/workflows/unit_test.yml index 3608c7e3c..83ec6871b 100644 --- a/.github/workflows/unit_test.yml +++ b/.github/workflows/unit_test.yml @@ -28,7 +28,6 @@ jobs: runner: ubuntu-22.04-arm fail-fast: false - continue-on-error: true steps: - name: Harden the runner (Audit all outbound calls)