Repository navigation
fix(contributor-check): raise artifact retention to 90 days - #4618
Conversation
The contributor-check-result artifact was uploaded with retention-days: 3. eng/submission-gate.mjs's readContributorRiskArtifact() downloads that artifact via 'gh run download' to read the contributor risk signal. Once the artifact expires, the download fails, is caught and treated as null, and the gate reports a permanent 'Contributor risk signal' infrastructure failure for any PR that takes longer than 3 days to review -- only clearable via a maintainer commenting /rerun-checks. Reproduced: 'gh run download 37007671556 --repo github/awesome-copilot --name contributor-check-result' returned 'no valid artifacts found to download' because the artifact (uploaded 2026-10-02, 338 bytes, upload itself succeeded) expired under the 3-day retention before PR #3871 was reviewed. Raise retention-days to 90 (GitHub's standard default) so the artifact survives regardless of review latency. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 211fb092-66c2-4049-b1b9-614067c2eefe
🚦 Submission status: 👀 Ready for reviewRisk tier: Why this tier
Automated checks
Review
Commands
Updated for |
|
🟡 Contributor Reputation Check: MEDIUM risk
Maintainers: please review this contributor before merging. |
There was a problem hiding this comment.
Copilot review overview
🟢 Approval recommended
The scoped retention change preserves artifact compatibility and introduces no identified blocking issues.
Review effort: Balanced
Findings: None
What changed in this PR
Extends contributor-risk artifact availability to reduce submission-gate failures on PRs awaiting review.
Changes:
- Increases
contributor-check-resultretention from 3 to 90 days.
| File | Description |
|---|---|
.github/workflows/contributor-check.yml |
Retains contributor-risk artifacts for 90 days. |
💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Pull Request Checklist
npm startand verified thatREADME.mdis up to date. (rannpm run build; no README changes needed for this fix)mainbranch for this pull request.Description
Fixes
contributor-check.yml's artifact retention so the submission gate's "Contributor risk signal" infrastructure check stops permanently failing on PRs that take longer than a few days to review.Root cause:
.github/workflows/contributor-check.ymluploads thecontributor-check-resultartifact withretention-days: 3.eng/submission-gate.mjs'sreadContributorRiskArtifact()downloads that artifact viagh run downloadto read the contributor risk signal. Once the artifact expires (after 3 days), the download fails, the error is caught and treated asnull, and the gate reports a permanent "infrastructure failure" ("Contributor risk signal") that can only be cleared by a maintainer commenting/rerun-checksto regenerate a fresh artifact.Reproduced directly:
gh run download 37007671556 --repo github/awesome-copilot --name contributor-check-resultreturns "no valid artifacts found to download" — the artifact (uploaded 2026-10-02, 338 bytes, upload itself succeeded) expired under the 3-day retention before PR #3871 was reviewed.Fix: raise
retention-daysfrom3to90(GitHub's standard default) for thecontributor-check-resultartifact upload step, so the artifact survives long enough to be read regardless of how long a PR waits for review.I checked whether anything else in the repo relies on the 3-day window (
eng/submission-gate.mjs, its tests, and docs) — nothing hard-codes or assumes a specific retention period;readContributorRiskArtifact()simply fails closed on anygh run downloaderror, so no other changes were needed.Type of Contribution
Additional Notes
Validation performed:
npm ci— installed dependencies (js-yamlwas missing before this).node --test eng/submission-gate.test.mjs— 47/47 tests passed.npm run build— succeeded, regeneratedmarketplace.json(no README diff from this change).bash eng/fix-line-endings.sh— only the intended line was flagged as changed.By submitting this pull request, I confirm that my contribution abides by the Code of Conduct and will be licensed under the MIT License.