Skip to content

chore(ci): re-pin the review callers to ci-workflows v0.65.7 - #9803

Merged
kyle-sexton merged 1 commit into
mainfrom
chore/repin-review-callers-v0.65.7
Oct 24, 2026
Merged

kyle-sexton merged 1 commit into
mainfrom
chore/repin-review-callers-v0.65.7

Conversation

@kyle-sexton

Copy link
Copy Markdown
Member

Refs: melodic-software/ci-workflows#880

Summary

Re-pins both review callers to ci-workflows v0.65.7 (4c531cea137f5cbb38d4c132dbfa6e38f76fba7d), which carries owner decisions Q52 and Q53 (2026-10-24). A trusted-path match no longer holds a pull request by itself: hold-paths now names files the prompt sends to extra security scrutiny. A cost hold now needs a real charge. A spend from prepaid credits or subscription usage becomes a summary line, not a hold.

Fix

Verification

  • bash scripts/ci-review-lanes.test.sh: PASS=55 FAIL=0.
  • node .github/standards/runner-policy/runner-policy.mjs --root <worktree>: Runner policy passed.
  • actionlint passes on both callers.
  • scripts/check-affected.sh --tests: 10 passed, 4 skipped (CI only).

Related

🤖 Generated with Claude Code

v0.65.7 (melodic-software/ci-workflows#880) holds a pull request only
for a real-charge cost or a CRITICAL security finding: hold-paths now
names files for extra security scrutiny and never holds by itself. The
callers' hold-paths comment says so, and the lane test pins v0.65.7.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kyle-sexton
kyle-sexton marked this pull request as ready for review October 24, 2026 16:50
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 24, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-24T16:52:25.473901Z 9c8f556 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions

Copy link
Copy Markdown
Contributor

claude-review reviewed 9c8f5561eb723ea1b08f855b2352f7153b5a426f: 0 finding(s), 0 as inline comments.

No findings. I read the whole 3-file diff and the PR context, and did not run the tests or the runner-policy check myself.

  • Pin consistency: pr-review-hosted.yml and pr-review-security-hosted.yml both move to pr-review-cli.yml@4c531cea… # v0.65.7. scripts/ci-review-lanes.test.sh expects the same SHA and tag in its grep and in its pass and fail messages. No v0.65.6 text is left in the repo apart from the old, still-allowed policy entry.
  • Runner policy: .github/standards/runner-policy/policy.json already has an allowlist entry for pr-review-cli.yml@4c531cea… (line 1056), so the new pin will pass the runner-policy check.
  • hold-paths comments: The new comment matches the PR description: a hold needs a real-charge cost or a CRITICAL security finding, and hold-paths only sends files to extra scrutiny. The hold-paths lists are unchanged and still equal in both callers, and the test script's list check still applies.
  • Verification claims: The PR's test results (PASS=55, actionlint, runner-policy) are author-claimed and unverified by me. I could not confirm that the SHA matches the v0.65.7 tag, because I have no GitHub access.
  • Cost: This change only re-pins the review workflow version. It adds no new model call, trigger, schedule or paid runner, so there is no hold.
  • Manifests, closing issues, paved paths: The diff touches no plugin manifests and the PR closes no issues. It only references ci-workflows#880. I did not look for a paved-path row, because the diff adds no second way to do anything.
  • Left undone: The follow-up the PR names, plugins/review skills still listing trust-gate and the broader cost class, is out of scope for this PR.

@github-actions

Copy link
Copy Markdown
Contributor

claude-security-review reviewed 9c8f5561eb723ea1b08f855b2352f7153b5a426f: 0 finding(s), 0 as inline comments.

Security review of PR #9803: no security findings (0).

I read the whole diff and the PR context. The PR re-pins two reusable-workflow callers from ci-workflows v0.65.6 to v0.65.7. It also updates the pin check in scripts/ci-review-lanes.test.sh and the hold-paths comments.

  • Pin change: both callers still use a full 40-character commit SHA with a version comment (pr-review-hosted.yml:169, pr-review-security-hosted.yml:174). The pin is not loosened. I could not confirm that 4c531cea… is the v0.65.7 tag, because I have no network or GitHub access. The PR says it is, and the test script checks that the SHA and the version comment agree. A reviewer can compare the SHA against the release tag if they want that checked.
  • Permissions and inputs: permissions: is unchanged (contents: read, pull-requests: write). So are hold-label: needs-human, publish: comments, and the four hold-paths globs. The test script still asserts all of these. No trigger changed, and no expression from the github context was added to any run: block.
  • Behavior change, not a finding: a match on hold-paths no longer holds a PR on its own. The comments now say those paths only send the prompt to extra security scrutiny. A cost hold now needs a real charge. A CRITICAL security finding still holds. The PR states these are owner decisions Q52 and Q53 from 2026-10-24, so I took the narrowing as intended. It does mean a change to .github/standards/trusted-actors/**, check-trusted-trigger/**, CODEOWNERS or .gitmodules is no longer held for a person by this lane. Any protection for those paths now comes from CODEOWNERS review and branch protection, which I did not examine.
  • Instruction surface: the diff changes only YAML comments and the test script's pin. It deletes no standing instruction. The follow-up the PR names is that the plugins/review skills' "Hold for a person" text is out of date. I applied the wrapper's hold classes, which replace that text.
  • Protected-class list: I did not read docs/conventions/instruction-exception-register/README.md. The diff removes no instruction text, so I judged it unnecessary.
  • Plugin manifests: none changed, so there are no manifest <field> lines.
  • Cost: no paid plan, billing or paid-resource change. More or fewer review runs would draw on prepaid credits or subscription usage, and this change does not alter that.

critical-findings: 0

@kyle-sexton
kyle-sexton added this pull request to the merge queue Oct 24, 2026

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.

The pr-verify verifier failed head 9c8f5561eb723ea1b08f855b2352f7153b5a426f. What it wrote, as data:

Summary: PR #9803 has no linked issue, so the spec is its own body. It re-pins both review callers from ci-workflows v0.65.6 to v0.65.7 and updates the test pin. The edits match the body and the test still checks them. The problem is what v0.65.7 does: a change to trusted-actors, CODEOWNERS, .gitmodules or check-trusted-trigger no longer holds the PR by itself, and spend from credits or subscription usage no longer triggers a cost hold. Both are holds the owner keeps, so loosening them is a blocking defect. The body cites owner decisions Q52 and Q53, but no trusted text available here records them.
- The PR body says the plugins/review code-review and security-review skills still list trust-gate and the broader cost class under 'Hold for a person' and leaves that as follow-up. That mismatch between the skill docs and the wrapper prompt should be tracked in an issue.
- `.github/workflows/pr-review-hosted.yml:169`: the re-pin to 4c531cea (v0.65.7) adopts upstream behavior under which a hold-paths match never holds by itself. This removes the automatic trust-gate hold on takeover-set paths (`.github/standards/trusted-actors/**`, `.github/actions/check-trusted-trigger/**`, `**/CODEOWNERS`, `**/.gitmodules`), leaving only whatever the model review decides. That loosens a hold the owner keeps. Fix: link an owner-written issue that records decisions Q52/Q53, or keep the v0.65.6 pin until one exists.
- `.github/workflows/pr-review-hosted.yml:192`: the rewritten hold-paths comment correctly describes the v0.65.7 behavior, and the input and its four globs are unchanged in both callers.

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.

The pr-verify verifier failed head 9c8f5561eb723ea1b08f855b2352f7153b5a426f. What it wrote about this file, as data:

- `.github/workflows/pr-review-security-hosted.yml:174`: the same re-pin narrows the cost hold to real charges, so prepaid-credit and subscription spend becomes a summary line instead of a hold. Cost holds belong to the owner. This needs owner authorization in trusted spec text, not only in the PR body's citation.

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.

The pr-verify verifier failed head 9c8f5561eb723ea1b08f855b2352f7153b5a426f. What it wrote about this file, as data:

- `scripts/ci-review-lanes.test.sh:79`: the pin assertion is updated to the v0.65.7 SHA and would fail if a caller drifted. Nothing here is wrong; it would need reverting only if the pin is reverted.

Merged via the queue into main with commit e5e9388 Oct 24, 2026
79 of 80 checks passed
@kyle-sexton
kyle-sexton deleted the chore/repin-review-callers-v0.65.7 branch October 24, 2026 17:53
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.

1 participant