Skip to content

Teach cut-release.sh about persona-mention - #1298

Merged
don-petry merged 1 commit into
mainfrom
feat/cut-release-persona-mention
Jul 18, 2026
Merged

don-petry merged 1 commit into
mainfrom
feat/cut-release-persona-mention

Conversation

@don-petry

@don-petry don-petry commented Jul 18, 2026 •

Copy link
Copy Markdown
Collaborator

Registering persona-mention in canary-rings.json (#754) isn't enough to cut its release — cut-release.sh keeps its own hardcoded agent allowlist, and the router was absent, so cut-release.sh persona-mention 1.0.0 --channel next fails with unknown agent. (Two-registry drift, in the release tooling.)

persona-mention is cross-repo exactly like pr-review-mention: its reusable lives in petry-projects/.github, this repo holds only the stub, so its tags resolve against .github. Added it beside pr-review-mention in cross_repo_agent(), the usage comment, and the error string.

  • bats tests/test_cut_release.bats — 61/61 (2 new)
  • shellcheck — clean

Prerequisite for the next-ring activation of the persona mention framework.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • New Features

    • Added support for the persona-mention agent when preparing releases.
    • Recognized persona-mention as a cross-repository agent.
  • Bug Fixes

    • Improved validation messages to include the newly supported agent.
  • Tests

    • Added coverage confirming the agent is accepted and correctly classified.

Registering `persona-mention` in canary-rings.json (#754) is not enough to cut
its release: cut-release.sh keeps its OWN hardcoded agent allowlist (valid_agent
/ cross_repo_agent), and the router was absent from it — so
`cut-release.sh persona-mention 1.0.0 --channel next` failed with "unknown
agent". This is the two-registry drift the framework fights, in the release
tooling.

persona-mention is a cross-repo agent exactly like pr-review-mention: its
reusable lives in petry-projects/.github, this repo holds only the caller stub,
so its release/channel tags resolve against .github (CROSS_REPO_TARGET). Added it
beside pr-review-mention in cross_repo_agent(), the usage comment, and the
unknown-agent error string.

Verification
- bats tests/test_cut_release.bats: 61/61 (2 new: valid_agent + cross_repo_agent
  accept persona-mention).
- shellcheck --severity=warning -x scripts/cut-release.sh: clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 18, 2026 13:17
@don-petry
don-petry requested a review from a team as a code owner July 18, 2026 13:17
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@coderabbitai

coderabbitai Bot commented Jul 18, 2026 •

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 6707f377-6c42-4918-9833-94909c320c92

📥 Commits

Reviewing files that changed from the base of the PR and between 4ab62aa and 1f6466b.

📒 Files selected for processing (2)
  • scripts/cut-release.sh
  • tests/test_cut_release.bats

📝 Walkthrough

Walkthrough

Release tooling now recognizes persona-mention as a cross-repository agent, updates unknown-agent guidance, and adds tests for validation and cross-repository classification.

Changes

Persona Mention Release Support

Layer / File(s) Summary
Agent allowlist and validation
scripts/cut-release.sh, tests/test_cut_release.bats
The release script documents and accepts persona-mention as a cross-repository agent, and tests verify both agent validity and cross-repository classification.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the main change: adding persona-mention support to cut-release.sh.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/cut-release-persona-mention

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds support for a new cross-repo agent named "persona-mention" to the release script (scripts/cut-release.sh) and includes corresponding unit tests in tests/test_cut_release.bats to verify its validation and classification. There are no review comments, and I have no feedback to provide.

@sonarqubecloud

Copy link
Copy Markdown

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the release-cutting tooling (scripts/cut-release.sh) to recognize persona-mention as a valid cross-repo agent (hosted in petry-projects/.github), addressing a two-registry drift where canary-rings.json registration alone was insufficient to cut releases.

Changes:

  • Add persona-mention to the cross-repo agent router (cross_repo_agent) so cut-release.sh persona-mention ... works.
  • Update cut-release.sh usage docs and the “unknown agent” error message to include persona-mention.
  • Add Bats unit coverage ensuring persona-mention is accepted and classified as cross-repo.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
scripts/cut-release.sh Adds persona-mention to the cross-repo agent allowlist and updates user-facing messaging accordingly.
tests/test_cut_release.bats Adds unit tests verifying persona-mention is a valid agent and is treated as cross-repo.

@don-petry

Copy link
Copy Markdown
Collaborator Author

Dev-Lead — waiting on PR blockers (intent: review-changes)

PR: #1298
No changes were committed, but the PR still has blocking checks or reviews (failing or cancelled checks, or changes-requested reviews). The retry cron will re-attempt automatically. Next attempt after: 2026-07-18T13:48:24Z

@don-petry

Copy link
Copy Markdown
Collaborator Author

Note

@don-petry I reviewed this PR and no code changes were needed, but it still has blocking checks or reviews (failing or cancelled checks, or changes-requested reviews), so I cannot mark it done yet. I'll re-check automatically.
Next attempt after: 2026-07-18T13:48:24Z

@don-petry
don-petry enabled auto-merge (squash) July 18, 2026 13:18
@don-petry
don-petry disabled auto-merge July 18, 2026 13:19
@don-petry

Copy link
Copy Markdown
Collaborator Author

Dev-Lead — waiting on PR blockers (intent: fix-reviews)

PR: #1298
No changes were committed, but the PR still has blocking checks or reviews (failing or cancelled checks, or changes-requested reviews). The retry cron will re-attempt automatically. Next attempt after: 2026-07-18T13:50:04Z

@don-petry
don-petry enabled auto-merge (squash) July 18, 2026 13:20

@donpetry-bot donpetry-bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated review — APPROVED ✓

Risk: LOW
Reviewed commit: 1f6466b12e6eb720b3be7c423c156453c70c07dc
Review mode: triage-approved (single reviewer)

Summary

Adds persona-mention to the cross-repo agent allowlist in scripts/cut-release.sh (case arm in cross_repo_agent(), usage comment, and the unknown-agent error string), with two new bats tests mirroring the existing pr-review-mention pattern. The classification was independently verified: persona-mention-reusable.yml exists in petry-projects/.github (the CROSS_REPO_TARGET host), and this repo's persona-runner.yml subscribes to the persona-mention repository_dispatch — exactly analogous to pr-review-mention, so release/channel tags correctly resolve against the .github host repo. The change is mechanical, self-consistent across all three touched locations, and test-covered (61/61 bats pass in CI).

Linked issue analysis

No linked closing issues. The PR body cites #754 (canary-ring registration) and the persona-mention framework work (#1293, merged) as motivating context; this PR is the stated prerequisite for cutting the next-ring release of persona-mention. Motivation is clear and consistent with the merged persona runtime on main.

Findings

No blocking findings.

  • Correctness: the three edits (allowlist, usage comment, error message) are consistent; valid_agent() delegates to cross_repo_agent(), so the new agent is accepted end-to-end. Verified persona-mention-reusable.yml exists in petry-projects/.github, confirming the cross-repo classification.
  • Tests: two new bats tests cover both valid_agent acceptance and cross_repo_agent classification, matching the established pattern.
  • Security: no auth/secrets/crypto surface; pure allowlist extension in release tooling. gitleaks passed. The run_secret_scanning MCP tool was unavailable in this run (Secret Protection MCP not exposed); the gitleaks CI check covers secret scanning.
  • Review threads: none open; CodeRabbit approved, Gemini/Copilot left comment-only reviews with no inline threads or unanswered questions.

CI status

All required checks pass: SonarCloud ✓, CodeQL ✓, agent-shield / AgentShield ✓, dependency-audit / Detect ecosystems ✓. Substantive non-required checks also green: shellcheck, bats, unit-tests, gitleaks, actionlint, Lint, holdout-guard, caller-stub-freeze, template-drift. The CANCELLED dev-lead / dispatch and dev-lead / ci-relay entries are non-required agent-orchestration runs (rate-limited/superseded), not validation checks.


Reviewed automatically by the PR-review agent (single-reviewer mode: fable 5). Reply if you need a human review.

@don-petry
don-petry merged commit 4dcea31 into main Jul 18, 2026
45 of 47 checks passed
@don-petry
don-petry deleted the feat/cut-release-persona-mention branch July 18, 2026 13:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants