Repository navigation
ci: replace admin-approval workflow with native required_reviewers - #310
Conversation
Retires the 227-line admin-approval.yml commit-status gate in favor of the ruleset's native required_reviewers rule (an @Wave-RF/wavehouse-admins team approval) — dropping the per-commit red-X / yellow-dot UX and the inlined-ADMINS-vs-board-config drift. Required status checks drop from three to two (CI + PR housekeeping). Also removes dependabot-automerge.yml per the de-automate-Dependabot decision: Dependabot PRs now get a human admin review like any PR, and housekeeping.yml requests the non-author admin on them too (the dependabot skip in the reviewer-assign steps is dropped). Doc-sync: AGENTS.md, development.md, and board-config.env comments now describe the native gate. The ruleset's bypass-mode (always -> pull_request), require_last_push_approval, required_reviewers rule, and the v*/sdk-v* tag ruleset were applied via the API in the same governance pass. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
Warning Review limit reached
More reviews will be available in 19 minutes and 58 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (8)
✨ Finishing Touches🧪 Generate unit tests (beta)
✨ Simplify code
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
📚 Docs preview is live → https://86afa6d8-wavehouse-docs.wave-rf.workers.dev
|
The supply-chain bullet said SHA-pinning is "enforced by the repository ruleset" — but it's the `sha_pinning_required` Actions permission setting, not a ruleset rule (neither the branch nor tag ruleset has an action-pinning rule). Corrected the wording. Flagged by the PR-A pre-push review as out-of-scope (it shipped in #308); folding the one-liner in here rather than opening a separate PR. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
## Summary Now that the `wavehouse-admins` team has repo access **and** code-review assignment (load-balanced) configured, reviewer routing is fully GitHub-native — so this removes the now-redundant `housekeeping.yml` reviewer machinery. The native flow: the `required_reviewers` ruleset rule requests the `@Wave-RF/wavehouse-admins` team on every PR → the team's **code-review assignment** auto-assigns + load-balances a specific member → their approval satisfies the rule. ## Changes - **`housekeeping.yml`** — remove the `pick-reviewer` step, the `Assign + request review` step (which used the composite), and the `Load board config` step. It now does only: path-labeling + PR-title-lint + the title-fail sticky comment. - **Delete `.github/actions/assign-and-request-review/`** — the composite's only remaining consumer (after `dependabot-automerge.yml` was removed in #310). - **`board-config.env`** — drop `ADMINS` (its last consumer gone), killing the team-membership-vs-`ADMINS` drift; the file now carries only Task Board IDs for `triage.yml`. - **Doc-sync** — `AGENTS.md`, `docs/src/content/docs/development.md`, `docs/src/content/docs/claude-code.md`, `CHANGELOG.md`. ## Net **−229 lines.** Bonus: removing the board-config-load step also clears a pre-existing `SC2086` actionlint warning on that line. ## Testing `make ci` green; both pre-push reviewers (`pre-push-reviewer`, `docs-reviewer`) → `ship_it`. The native reviewer-assignment behavior validates on the next non-bypass PR (this PR still triggers `main`'s housekeeping via `pull_request_target` until merged). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Summary
Completes the merge-gate redesign: retires the custom
Admin approvalstatus-check workflow in favor of the ruleset's nativerequired_reviewersrule (an approval from the@Wave-RF/wavehouse-adminsteam), and de-automates Dependabot.Changes (this diff)
admin-approval.yml— the 227-line commit-status gate that produced a per-commit red-X / yellow-dot on every PR until approval and keptADMINSinlined and duplicated inboard-config.env.dependabot-automerge.yml(auto-approve + auto-merge) — Dependabot PRs now get a human admin review like any PR;housekeeping.ymldrops the dependabot skip in its reviewer-assign steps so the non-author admin is requested on them too.AGENTS.md,docs/src/content/docs/development.md,.github/board-config.envcomments, and aCHANGELOG.mdentry — all updated to describe the native gate.Ruleset changes (already applied via API, out of this diff)
Admin approvaldropped → nowCI+PR housekeeping.required_reviewers=@Wave-RF/wavehouse-admins(1 approval, all files).always→pull_request(no direct pushes tomainfor anyone; admins still self- / emergency-merge their own PR).require_last_push_approvalon; new tag ruleset restrictingv*/sdk-v*creation to admins.required_reviewersenforces only if thewavehouse-adminsteam has repo write access — which it currently does not (granting it needsadmin:org). To be validated with the other admin online. If the rule doesn't enforce, the likely fix is granting the team write access (a settings change), not code. Fallback if it no-ops:required_approving_review_count: 1, and the only write-collaborators are the two admins — so an admin approval is still effectively required.Testing
make cigreen; both pre-push reviewers (pre-push-reviewer,docs-reviewer) → ship_it (zero findings). No remaining references to the deleted workflows except intentional "former / removed" descriptions.🤖 Generated with Claude Code