Repository navigation
fix: refresh community group status only when content changes - #1653
Merged
mrbobbytables merged 1 commit intoOct 19, 2026
Merged
mrbobbytables merged 1 commit into
mrbobbytables merged 1 commit into
Conversation
The weekly "Refresh community profiles and group status" workflow opened a pull request every run because check-community-group-links.mjs always rewrote data/community-groups.json with a fresh timestamp, even when no group status had changed (see cncf#1632 for a timestamp-only example). The radar and case-study collectors already compare generated content against the committed file and leave it alone when nothing moved; bring the group checker in line with them. - Compare the freshly checked groups against the previous report and exit without writing when they match, so create-pull-request sees no diff and opens nothing. - Rename the envelope timestamp from checkedAt to generatedAt. It now records when the published status data last changed, not when it was last checked. A legacy checkedAt report is migrated on the next run. - Render the date as "Upstream group status last updated on" and drop the 60-day staleness warning in validate-community-groups.mjs, which measured check recency and no longer has a field that means that. - Update unit, fixture and e2e coverage for the new field and wording, and fold the checker tests' repeated fixtures into shared helpers; lower CLONE_CEILING to the new count. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Signed-off-by: mrbobbytables <mrbobbytables@users.noreply.github.com>
✅ Deploy Preview for endusers ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
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.
Summary
The weekly "Refresh community profiles and group status" workflow opened a PR on every run (for example #1632) because
check-community-group-links.mjsalways rewrotedata/community-groups.jsonwith a fresh timestamp, even when no group status had changed. The radar and case-study collectors already compare generated content against the committed file and leave it untouched when nothing moved; this brings the group checker in line with them.Changes
scripts/check-community-group-links.mjs: compare the freshly checked groups against the previous report and exit without writing when they match, socreate-pull-requestsees no diff and opens nothing. The weekly check still runs and still logs its result.checkedAttogeneratedAt. It now records when the published status data last changed rather than when it was last checked. A legacycheckedAtreport is migrated on the next run that writes.src/components/GroupLinkStatus: render the date as "Upstream group status last updated on ...".scripts/validate-community-groups.mjs: validategeneratedAt; drop the 60-day staleness warning, which measured check recency and no longer has a field with that meaning.data/community-groups.json: field renamed; timestamp set to the migration date.CONTRIBUTING.md: update the note about the checker rewriting the data file.CLONE_CEILINGis lowered to the new count (268).No workflow change is needed: once the checker leaves the file untouched,
peter-evans/create-pull-requesthas nothing to commit.Validation
npm run test:unit:coverage:checkpassesnpm run check:duplicationpasses at the lowered ceilingnpm run validate:community-groupspassesnpm run buildpassesnpx playwright test tests/e2e/smoke.spec.js --grep "upstream group status"passes against a production buildRefs #1632