Repository navigation
Bump jdx/mise-action from 5.1.1 to 5.2.0 - #79
Conversation
|
@dependabot rebase |
Bumps [jdx/mise-action](https://github.com/jdx/mise-action) from 5.1.1 to 5.2.0. - [Release notes](https://github.com/jdx/mise-action/releases) - [Changelog](https://github.com/jdx/mise-action/blob/main/CHANGELOG.md) - [Commits](jdx/mise-action@2d8d4ca...9b200bc) --- updated-dependencies: - dependency-name: jdx/mise-action dependency-version: 5.2.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
52144a5 to
5aa89bb
Compare
qawatake
left a comment
There was a problem hiding this comment.
Update review: jdx/mise-action 5.1.1 → 5.2.0
Reviewed head: 5aa89bb5dd7b5164b6ae2742ac6171150deb955e (base 678a301fa6a8b17176ef966e16cdb55d174c7908, after @dependabot rebase onto main with the tagpr 1.21.3 bump)
Final verdict: Proceed
Risk: Medium — axes hit: change type (minor release with several default-behavior changes: cache key format, PATH export method, monorepo auto-detection, release verification; none applies to this repo's code beyond a one-time cache miss, see table), supply chain (v5.2.0 was published 2026-10-16, 8 days ago, below the 1–2 week guideline; the action bundles a new runtime dependency packslip from the same owner), test coverage (the PR's CI exercises the new action in ci.yml and release-label.yml; the tagpr.yml release job is only exercised at the next release). Other axes low: CI-only tooling, no external input, rollback is reverting three pins, license unchanged.
Review type: Approve
Release/deploy: Not needed (no-release) — reason: the PR only changes uses: pins in three workflow files. The shipped artifact is the committed main.js / manifest.json / styles.css, none of which is touched. The CI artifact-diff job on this head (running under mise-action 5.2.0 itself) built base and head and got identical hashes ("成果物は同一 (no-release)"); I read that job's log. The existing no-release label (re-applied by release-label-apply for this head) is kept.
Changes reviewed (2.1)
- Primary sources read: release notes for v5.1.2 (https://github.com/jdx/mise-action/releases/tag/v5.1.2) and v5.2.0 (https://github.com/jdx/mise-action/releases/tag/v5.2.0), CHANGELOG.md, the compare jdx/mise-action@v5.1.1...v5.2.0 (29 commits), and
action.ymlat the pinned commit. - Version range covered: v5.1.1 → v5.1.2 → v5.2.0.
- Breaking / behavior changes: (a) default cache key now carries a 30-day period suffix (
-p<N>), so the first run after upgrading misses the cache and the cache is rebuilt every 30 days (#689; new inputcache_max_age_days,0restores the old behavior); (b) new inputmonorepo(defaulttrue) adds--monorepotomise installwhen the mise config has[monorepo].config_roots(#679); (c) PATH is exported frommise env --pathsin mise's order instead of a PATH diff (#685); (d) mise binaries are verified against a sigstore-signed packslip when the release has one, falling back to the existing minisignSHASUMS256check when it does not (#693); (e) latest-version lookup falls back between GitHub and mise.jdx.dev (#692; not used with a pinnedversion); (f) v5.1.2:mise_dirnow exportsMISE_DATA_DIR, and a Windowsauto_updatecrash fix. New inputscache_restore_retry_budget/cache_save_retry_budgetdefault to0s(disabled).runs.usingstaysnode24. No input removed or renamed, no new permissions.
Impact and adequacy of the PR (2.2, 2.3)
| Change | Affected location / none | Evidence | PR handling adequate? |
|---|---|---|---|
Cache key format (-p<N> suffix) |
All three workflows use cache: true with the default cache_key |
`git grep -E 'cache_key | cache_max_age_days' origin/main -- .github/workflows: no hits, so the default applies. CI log on this head: "mise cache not found for mise-v1-linux-x64-ubuntu24-2026.8.3-p691-…" followed by "Cache saved" (the expected one-time miss; 5.1.1 restored mise-v1-linux-x64-ubuntu24-2026.8.3-…` without the suffix) |
| mise version drift via cache rebuild | None | version: 2026.8.3 is set in all three mise-action steps; CI log: "minimum_release_age is ignored because an explicit mise version was provided", mise --version → 2026.8.3 |
Yes |
monorepo auto-detection |
None | grep monorepo mise.toml: no [monorepo] section; CI log shows mise install without --monorepo and installs node 24.22.1 / pnpm 10.34.7 as before |
Yes |
| PATH export order | None observed | `git grep -E 'rustup | cargo' origin/main -- .github: no hits. Steps after mise-action only call pnpm/nodefrom mise; CI log "Done in … using pnpm v10.34.7" andcheck-toolchain.mjs` "ok (pnpm 10.34.7, node 24)" confirm the mise-managed binaries resolve |
| Packslip verification / fallback gap in v5.2.0 (fixed in v5.2.1) | None | mise 2026.8.3 (pinned) predates packslips, so the action uses the same minisign path as 5.1.1: CI log "Verified mise-v2026.8.3-linux-x64.tar.zst against signed checksums". Not a regression versus 5.1.1 | Yes |
| GitHub → mise.jdx.dev fallback | None | Only used for latest-version lookup; version is pinned. Runner is GitHub-hosted with no egress allowlist |
Yes |
mise_dir / MISE_DATA_DIR |
None | `git grep -E 'mise_dir | MISE_DATA_DIR' origin/main -- .github`: no hits |
| SHA pin and comment (three files) | ci.yml, release-label.yml, tagpr.yml |
git ls-remote of refs/tags/v5.2.0 → 9b200bcecbfd6303e69a4a261b2e09e3757440a7 (lightweight tag); all three lines use that SHA with # v5.2.0; gh pr diff shows exactly 3 removed / 3 added lines. CI check-actions-pinned.mjs passed |
Yes |
Verification (2.4)
- CI on this head:
ci / buildpassed under mise-action 5.2.0 (frozen install with pnpm 10.34.7, toolchain / actions-pinned / config-schema checks,pnpm audit"No known vulnerabilities found", biome lint,tsc --noEmit, esbuild build, bundled-deps check) andrelease-label / artifact-diffpassed under 5.2.0 with identical artifact hashes. I read both logs; the only new lines are the cache miss / save with the new key. - Not covered by CI: the
releasejob intagpr.ymlruns only when a tag is cut. It uses the samemise-actioninputs asci.yml, so the behavior verified above carries over, but it has not been executed with 5.2.0 yet. - Additional checks I did: compared the cache-key lines between the 5.1.1 and 5.2.0 CI logs; resolved the tag SHA upstream.
Rollback, supply chain, license (2.5, 2.6, 2.7)
- Rollback: revert the three pin lines. Caches under the new key are harmless. No persistent data involved.
- Supply chain: tag commit
9b200bceis a GPG-verified commit by the ownerjdx(chore: release v5.2.0), contained inmain; the release was created bygithub-actions[bot]via the same release workflow as v5.1.1. 27 of 29 commits are GPG verified (the two unsigned ones only touch CI policy files).dist/index.jsgrows by ~47k lines because of the new runtime dependencypackslip@1.8.0(exact pin) and its sigstore dependency tree;packslipis published byjdx's npm account with npm provenance, from the same owner as the action. The action is a JavaScript action (node24), so what runs is the committeddist/. Published 8 days ago, no maintainer change. - License: MIT → MIT (LICENSE blob unchanged). New bundled transitive deps are MIT / ISC / Apache-2.0 / BSD-2-Clause / BlueOak-1.0.0, all permissive.
Blocking conditions
- Hit: none.
Requests
- None. Note for later: v5.2.1 closes the "no packslip → silently fall back" gap; it becomes relevant once
version:is moved to a mise release that ships a packslip (2026.9.3+). The next dependabot bump will cover it.
Unverified / notes for other reviewers (2.9)
- The committed
dist/index.jswas not rebuilt fromsrc/to confirm it matches; trust rests on the verified tag commit and the owner's release workflow. - The packslip verification path (#693) was not exercised, because the pinned mise 2026.8.3 has no packslip.
- The
tagpr.ymlrelease job has not run with 5.2.0 yet (first exercised at the next release). mainmoved again after this rebase (the @types/node 24.19.2 merge,package.json/ lockfile only). It does not touch workflow files, so this head was reviewed as-is.
Bumps jdx/mise-action from 5.1.1 to 5.2.0.
Release notes
Sourced from jdx/mise-action's releases.
... (truncated)
Changelog
Sourced from jdx/mise-action's changelog.
... (truncated)
Commits
9b200bcchore: release v5.2.0 (#680)b511e8dChange minimum age for auto-merging release PRs887d1f4docs: use resolved Windows downloads cache path (#690)93c62adchore: replace prettier with oxfmt (#694)04716d4feat: verify the mise binary against its signed packslip (#693)5108104feat(cache): retry throttled cache restores and saves (#692)d401260docs: explain caching mise downloads instead of installs (#686)e7cf35ffeat(cache): rebuild the cache every 30 days by default (#689)cd02696fix: export the PATH entries mise reports with mise env --paths (#685)6784481docs: tell release workflows not to use the cache (#682)