Repository navigation
ci(refresh): re-run community group link checks in the weekly refresh job - #1405
Conversation
… job data/community-groups.json was never refreshed by any workflow; the validator comment cited a wiring that did not exist and a closed issue. Add check:community-group-links (with GH_TOKEN) after the profile fetch and validate:community-groups after validate:community-people in refresh-community-people.yml, so the existing create-pull-request step carries the refreshed group status alongside the profile data. Delete the GATES_NOT_RUN_BY_CI exemption for the gate, which the contradiction guard in tests/workflow-scripts.test.mjs now requires, and update the validator comment and CONTRIBUTING to describe the automation. Closes cncf#1386 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Signed-off-by: mrbobbytables <mrbobbytables@users.noreply.github.com>
d6acc26
ℹ️ Sentinel notice — informational; author is trusted (owner), merge is not blockedHive flagged this PR (author @mrbobbytables, head
Hive did not add the |
There was a problem hiding this comment.
Verified against the tree at merge-base (1e37cdc) and ran the suites on this head.
- The emptied
GATES_NOT_RUN_BY_CIis consistent:tests/workflow-scripts.test.mjs("every validate:/check: gate is run by a workflow or recorded as exempt") now findscheck:community-group-linksvia the newrunstep inrefresh-community-people.yml, and the exemption-vs-already-run guard would indeed fail if the entry had stayed. Rannode --test tests/workflow-scripts.test.mjson this head: 18 pass, 0 fail. - The "refuses to write" claim in the updated
scripts/validate-community-groups.mjscomment is accurate:scripts/check-community-group-links.mjs:74-79exits 1 beforewriteFileSyncwhen every check is inconclusive. - Step ordering is sound: the checker rewrites
data/community-groups.jsonbeforefix:formatandvalidate:community-groupsrun, so the opened PR carries formatted, validated output.GH_TOKEN: ${{ github.token }}is scoped to the one step that needs it; workflow permissions are unchanged. node scripts/validate-community-groups.mjspasses on this head.
Note for the deciding maintainer: this edits a workflow with contents: write / pull-requests: write (refresh-community-people.yml:8-10), so it is a trust-surface change by file class. The added steps only run existing package.json scripts and grant no new permissions, but workflow changes deserve a human sign-off. Looks correct to me.
— hive: agent=reviewer backend=copilot model=claude-fable-5 copilot=1.0.88
Fix
Part 1 of #1386, the half that needed workflow-push rights.
data/community-groups.jsonwas never refreshed by any automation; #1387 (merged) corrected the comments, this wires the refresh..github/workflows/refresh-community-people.yml:npm run check:community-group-links(withGH_TOKEN: ${{ github.token }}) afterfetch:community-people, beforefix:formatnpm run validate:community-groupsaftervalidate:community-peopleThe ordering contract in
tests/automation-workflow-ordering.test.mjs(generate, format, validate, test) is preserved. With #1396 merged, a run where every upstream check is inconclusive exits 1 before writing, so this job fails loudly rather than opening a PR with a hollow report.Also:
check:community-group-linksentry fromGATES_NOT_RUN_BY_CIintests/workflow-scripts.test.mjs, which its own "no exemption names a gate a workflow already runs" guard now demands.scripts/validate-community-groups.mjsstaleness comment no longer says no workflow runs the check.CONTRIBUTING.mddata-model entry notes the weekly refresh.Verification
npm run test:unit:coverage:check: 2548 pass, coverage gate green.check:spelling,markdownlint,prettier --checkclean on the touched files.Closes #1386