[process] fork PRs get real CI feedback: workflow_run validate report + PR welcome + tightened family-pr-checks - #39
Merged
Conversation
…e report + PR welcome + tightened family-pr-checks
- validate.yml: hand the bench2 validate report to a new validate-report.yml
(workflow_run) via artifact — on fork PRs the pull_request token is read-only,
so the report comment silently failed ("Resource not accessible by
integration") for every external contributor. All 5 open external family PRs
have zero feedback comments today.
- pr-welcome.yml (pull_request_target, comment-only): one canned bilingual
orientation comment on family-PR open — how to read red gates, pinned-env
reproduce command, first-PR CI-approval note, package scope, Draft policy.
- family-pr-checks.yml: also reject stray files in designs/<family>/ (reference
PDFs/photos go in the issue), require the PR checklist fully ticked, and
require the dir name to match the linked issue's family name.
- CONTRIBUTING.md + PR template: Draft/WIP policy, first-PR CI approval note,
updated hard-gates table.
Signed-off-by: BenchCAD <benchcad@users.noreply.github.com>
…), doc-anchor links in the PR checklist - pr-welcome.yml: greet only first-time contributors (vLLM new_pr_bot pattern — returning contributors get no bot noise) and cut the comment to three bullets + one zh line. - pull_request_template.md: each checklist item links to the exact doc section (sglang pattern) so the template itself routes people to the docs. Local evidence for why the spurious-red fix matters: all five open external family PRs (#34-#38) PASS bench2 validate locally — every red 'validate' on them is the fork-PR comment crash, not the design. Signed-off-by: BenchCAD <benchcad@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The audit behind this PR: all 5 open external family PRs (#34–#38) are red with zero feedback comments — the validate-report comment step fails on fork PRs ("Resource not accessible by integration": the
pull_requesttoken is read-only on forks), so external contributors see only a bare red ✗. Two also shipped stray reference PDFs/photos insidedesigns/<family>/, one has a family-name/issue mismatch, one has an all-ticked checklist with red CI, and one got no CI at all (first-contributor approval pending, with no explanation anywhere).This PR makes the machinery do the explaining, so maintainer communication is no longer the bottleneck:
validate-report.yml(new,workflow_run) — posts the bench2 validate report onto the PR from base-repo context, which works for forks.validate.ymlhands over report + PR number via an artifact and drops its now-unneededpull-requests: write. On failure the comment leads with the local reproduce command + DEBUGGING link (EN/中文). Comment-only; never checks out PR code.pr-welcome.yml(new,pull_request_target) — one canned bilingual orientation comment when a family PR opens: how to read the gates, pinned-env reproduce, first-PR CI-approval note, package scope, Draft policy. Comment-only; never checks out PR code.family-pr-checks.ymltightened — new red conditions with exact fixes in the message: stray files indesigns/<family>/(refs belong in the issue), unchecked PR-checklist items, dir name ≠ linked issue's family name.Not in this PR (repo settings, can't be a file change): consider Settings → Actions → Require approval for first-time contributors who are new to GitHub only, so returning contributors get CI without a manual click.
Not self-merging — for your review/merge (protected main).
🤖 Generated with Claude Code