Skip to content

chore(ci): skip hyperfine comments without permission#9629

Merged
jdx merged 2 commits intojdx:mainfrom
risu729:fix/hyperfine-comment-permission
May 6, 2026
Merged

chore(ci): skip hyperfine comments without permission#9629
jdx merged 2 commits intojdx:mainfrom
risu729:fix/hyperfine-comment-permission

Conversation

@risu729
Copy link
Copy Markdown
Contributor

@risu729 risu729 commented May 5, 2026

Summary

  • skip the hyperfine PR comment action for forked pull requests where pull_request workflows do not receive write permissions
  • keep writing comment.md to the step summary so benchmark details remain visible

Tests

  • git diff --check
  • mise x actionlint -- actionlint .github/workflows/hyperfine.yml

@gemini-code-assist
Copy link
Copy Markdown
Contributor

Note

Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported.

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented May 5, 2026

Greptile Summary

This PR guards the thollander/actions-comment-pull-request step against permission failures on forked PRs by adding github.event.pull_request.head.repo.full_name == github.repository to its if condition, and replaces always() with !cancelled() on several steps for more intentional cancellation behavior. The step summary write is preserved for all non-cancelled PR runs, keeping benchmark output visible even when the comment is skipped.

  • Fork check added to the "Comment on PR" if expression — the idiomatic and safe place to put context-derived values (no shell injection risk, unlike a run block).
  • always()${{ !cancelled() }} means mise run test:perf and sccache --show-stats now correctly skip on cancellation while still executing after a step failure.

Confidence Score: 5/5

Safe to merge — the change correctly skips a write-permission-requiring step for forked PRs without affecting benchmark execution or the step summary.

The fork guard is placed in the step's if expression rather than a shell run block, which is the correct approach. The !cancelled() replacement is a standard improvement. No logic paths are broken.

No files require special attention.

Reviews (2): Last reviewed commit: "chore(ci): address hyperfine review" | Re-trigger Greptile

Comment thread .github/workflows/hyperfine.yml Outdated
@risu729
Copy link
Copy Markdown
Contributor Author

risu729 commented May 6, 2026

CI follow-up after waiting for checks on 2bce4069ccb6146c93241199c1e2167ffa0e97fd: the checks relevant to this PR change passed, including benchmark/hyperfine, lint, builds, Linux/macOS tests, Greptile, and Socket.

The remaining failures look unrelated to this PR, which only updates .github/workflows/hyperfine.yml:

  • windows-e2e failed while installing core:zig@2024.11.0-mach; the Zig artifact download from pkg.hexops.org timed out after 30s with a TCP connect timeout.
  • registry-ci failed because the test-tool-* registry shards failed or timed out. Several shards hit the registry tool retry failure path, and shards 2/3/4 exceeded the 30m job timeout while running .github/actions/mise-tools / waiting through GitHub rate-limit behavior.

This comment was generated by an AI coding assistant.

@risu729 risu729 marked this pull request as ready for review May 6, 2026 13:37
@jdx jdx merged commit 4aae561 into jdx:main May 6, 2026
30 of 41 checks passed
@risu729 risu729 deleted the fix/hyperfine-comment-permission branch May 6, 2026 20:43
mise-en-dev added a commit that referenced this pull request May 7, 2026
### 🚀 Features

- **(aqua)** support registry libc variants by @jdx in
[#9652](#9652)
- **(bin-paths)** add executable names output by @risu729 in
[#9617](#9617)

### 🐛 Bug Fixes

- **(aqua)** preserve configured file extensions by @risu729 in
[#9611](#9611)
- **(aqua)** support registry file links by @risu729 in
[#9610](#9610)
- **(backend)** reject bare package backend names by @risu729 in
[#9608](#9608)
- **(backend)** apply inline tool option overrides by @risu729 in
[#9306](#9306)
- **(backend)** skip versions host for local tool opts by @risu729 in
[#9568](#9568)
- **(github)** chmod explicit archive bin by @risu729 in
[#9609](#9609)
- **(install)** skip remote-versions refresh in prefer-offline mode by
@jdx in [#9627](#9627)
- **(lock)** scope targets to active project root by @risu729 in
[#9319](#9319)
- **(lockfile)** respect existing platforms during auto-lock by @jdx in
[#9621](#9621)
- **(pipx)** filter yanked pypi releases by @risu729 in
[#9607](#9607)
- **(pipx)** declare python as a backend dependency by @jdx in
[#9678](#9678)
- **(schema)** update refs to $defs in mise-registry-tool.json by
@risu729 in [#9671](#9671)
- **(task)** terminate parallel siblings on failure via process groups
by @jdx in [#9655](#9655)
- **(task)** stable MISE_PROJECT_ROOT for monorepo tasks, add
MISE_MONOREPO_ROOT by @jdx in
[#9657](#9657)
- **(trust)** run enter hooks after trusting config by @risu729 in
[#9634](#9634)
- **(ui)** stop clearing screen for prompts by @jdx in
[#9619](#9619)
- use /bin/cp on macos by @pdehlke in
[#9656](#9656)

### 🚜 Refactor

- **(aqua)** store aqua var defaults as strings by @risu729 in
[#9645](#9645)
- **(config)** support structured TOML values in registry backend
options by @risu729 in [#9584](#9584)
- **(deps)** remove serde_derive dependency by @risu729 in
[#9670](#9670)
- **(deps)** remove anyhow dependency by @risu729 in
[#9661](#9661)
- **(deps)** use std::sync::LazyLock instead of once_cell::Lazy by
@risu729 in [#9668](#9668)
- **(schema)** generate task schema from mise schema by @risu729 in
[#9581](#9581)
- **(schema)** reuse task props with unevaluatedProperties by @risu729
in [#9582](#9582)
- **(schema)** reuse registry common types by @risu729 in
[#9648](#9648)
- **(schema)** reuse plugin script config by @risu729 in
[#9647](#9647)
- **(schema)** use $defs in schema files by @risu729 in
[#9646](#9646)

### 📚 Documentation

- **(node)** add tips for enabling node idiomatic by @fu050409 in
[#9675](#9675)

### 🧪 Testing

- **(cli)** remove nondeterministic tool depends assertion by @risu729
in [#9633](#9633)
- **(e2e)** pin uv to 0.11.8 around astral-sh/uv#19278 by @jdx in
[#9618](#9618)
- **(e2e)** wait for docker env cleanup by @risu729 in
[#9631](#9631)
- **(zig)** use official zig instead of mach mirror by @jdx in
[#9659](#9659)

### 📦️ Dependency Updates

- fall through to hash check when providers have no outputs by @jdx in
[#9622](#9622)
- bump Cargo.lock by @jdx in
[#9625](#9625)

### 📦 Registry

- remove registry depends by @risu729 in
[#9571](#9571)
- add code-review-graph (pipx:code-review-graph) by @chautruonglong in
[#9673](#9673)

### Chore

- **(ci)** split large registry test-tool changes by @risu729 in
[#9628](#9628)
- **(ci)** make perf script robust to runner noise by @jdx in
[#9635](#9635)
- **(ci)** skip hyperfine comments without permission by @risu729 in
[#9629](#9629)

### New Contributors

- @chautruonglong made their first contribution in
[#9673](#9673)
- @pdehlke made their first contribution in
[#9656](#9656)

## 📦 Aqua Registry Updates

### New Packages (5)

-
[`anthropics/anthropic-cli`](https://github.com/anthropics/anthropic-cli)
- [`crates.io/wasmi_cli`](https://github.com/wasmi-labs/wasmi)
- [`openclaw/gogcli`](https://github.com/openclaw/gogcli)
- `racket-lang.org/racket-minimal`
- [`runs-on/cli`](https://github.com/runs-on/cli)

### Updated Packages (13)

- [`UpCloudLtd/upcloud-cli`](https://github.com/UpCloudLtd/upcloud-cli)
- [`aristocratos/btop`](https://github.com/aristocratos/btop)
- [`dprint/dprint`](https://github.com/dprint/dprint)
- [`j178/prek`](https://github.com/j178/prek)
- [`jdx/hk`](https://github.com/jdx/hk)
- [`jdx/mise`](https://github.com/jdx/mise)
- [`jdx/usage`](https://github.com/jdx/usage)
- [`jreleaser/jreleaser`](https://github.com/jreleaser/jreleaser)
-
[`jreleaser/jreleaser/standalone`](https://github.com/jreleaser/jreleaser)
- [`pnpm/pnpm`](https://github.com/pnpm/pnpm)
- [`suzuki-shunsuke/cmdx`](https://github.com/suzuki-shunsuke/cmdx)
- [`suzuki-shunsuke/ghir`](https://github.com/suzuki-shunsuke/ghir)
- [`twpayne/chezmoi`](https://github.com/twpayne/chezmoi)
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.

2 participants