diff --git a/.github/workflows/pr-health.yml b/.github/workflows/pr-health.yml index ad41fddcb..4cd0ec6e7 100644 --- a/.github/workflows/pr-health.yml +++ b/.github/workflows/pr-health.yml @@ -131,11 +131,10 @@ jobs: } } - - name: Fail when the PR body is incomplete - if: steps.validate.outputs.valid != 'true' - run: | - echo "PR template validation failed. Update the PR body or move the PR back to draft." - exit 1 + - name: Report incomplete PR body + if: steps.validate.outputs.valid != 'true' + run: | + echo "PR template validation found missing fields. The governance comment and labels identify the required author updates." label: runs-on: ubuntu-latest diff --git a/scripts/tests/test_pr_health_workflow.py b/scripts/tests/test_pr_health_workflow.py new file mode 100644 index 000000000..9920397ad --- /dev/null +++ b/scripts/tests/test_pr_health_workflow.py @@ -0,0 +1,14 @@ +"""Tests for the PR governance workflow contract.""" + +from __future__ import annotations + +from pathlib import Path + + +def test_incomplete_pr_template_is_reported_without_failing_job() -> None: + workflow = Path(".github/workflows/pr-health.yml").read_text(encoding="utf-8") + + assert "Report incomplete PR body" in workflow + assert "PR template validation found missing fields" in workflow + assert "Fail when the PR body is incomplete" not in workflow + assert 'echo "PR template validation failed' not in workflow