Skip to content

test(mise): fail when an env lockfile is missing a requested tool version - #1262

Open
Ned-el-ch wants to merge 7 commits into
mainfrom
fix/DT-5647-mise-env-lockfile-drift
Open

Ned-el-ch wants to merge 7 commits into
mainfrom
fix/DT-5647-mise-env-lockfile-drift

Conversation

@Ned-el-ch

@Ned-el-ch Ned-el-ch commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

What this PR does / why we need it

devbase's env lockfiles only get regenerated when the repo is restencilled. In #1215 devenv was bumped to 1.68.0 in mise.e2e.toml but not in the lock, so v2.40.0 shipped mise.e2e.lock with 1.67.0. Since mise 2026.10.19 CI has to look up the missing version over the network during the token-less bootstrap install and that lookup 404s on the private repo. As a result shared/e2e fails on every repo pinned to v2.40.0. This test fails devbase CI whenever mise.devbase.lock or mise.e2e.lock is missing a version its toml requests, so a manual bump without a relock can't ship again.

Jira ID

DT-5647

Notes for your reviewers

@Ned-el-ch
Ned-el-ch requested a review from a team as a code owner October 26, 2026 12:46
Comment thread shell/lib/mise_test.bats Resolved
Comment thread shell/lib/mise_test.bats Resolved
Comment thread shell/lib/mise_test.bats Resolved
@getoutreach-ci-2

Copy link
Copy Markdown

Link to code coverage report (posted by coverbot 🤖)

@Ned-el-ch
Ned-el-ch requested review from iamrz1 and malept October 27, 2026 08:43

@malept malept left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I don't think validating mise lockfiles via bats tests is the right way to do this long-term, but in the short term this is fine. There should be a follow up task to integrate this into the devbase CLI (i.e., devbase lint mise-lock) and be called from the lint stage. It should also check that each locked tool has its platform URLs and checksums (as appropriate), and that the lockfile has no stale entries.

I'm requesting changes because the awk script still needs to be migrated to jq syntax.

Comment thread shell/lib/mise_test.bats Resolved
Parses inline-table and array tool entries, and accepts fuzzy and
"latest" requests that the lockfile resolves to a full version.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@Ned-el-ch
Ned-el-ch requested a review from malept October 29, 2026 13:00
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