jdx/mise · error
locked mode requires the locked precompiled artifact
Error message
{message}
locked mode requires the locked precompiled artifact What it means
When node precompiled archive fetch returns NotFound in locked mode and a flavor-specific message exists (e.g. for node flavors whose builds are not published), the error is raised with the flavor message plus the locked-mode requirement, explaining that locked installs cannot fall back to compiling or other artifacts.
Solutions
- Regenerate mise.lock with `mise lock` so it points at an existing artifact
- Remove the flavor requirement (use standard node) or switch to a version with published flavor builds
- Disable locked mode if you can accept a source compile fallback
Example fix
# before mise install node@20.0.0 # locked, flavor build missing # after mise lock && mise install node@20.0.0 # or drop the flavor: mise use node@20.0.0
Defensive patterns
Strategy: fallback
Validate before calling
# verify the flavor archive exists for the platform before locked install curl -sfIL "https://nodejs.org/dist/v20.0.0/node-v20.0.0-linux-x64.tar.gz"
Try / catch
mise install node@X || { mise lock; mise install node@X; } Prevention
- Verify flavored node builds exist for your OS/arch before locking
- Prefer official node builds unless a flavor is required
- Keep mise.lock fresh with periodic `mise lock`
When it happens
Trigger: Running `mise install node` (or exec/use) with locked mode active, node_compile disabled by lock semantics, and the requested node flavor's precompiled archive not being found upstream.
Common situations: Using locked mode (mise.lock) with a node flavor whose official precompiled builds don't exist for the platform/version; stale lock pointing at a removed artifact.
Understand the failure class
Background: 'Could not be found', 'does not exist', 'not found in database': the resource-not-found family when an ID, slug, key, or URI lookup comes back empty — this error's family across 20 libraries.
Related errors
- compilation is disabled
- precompiled node archive not found and locked mode requires…
- \ncompilation is disabled
- precompiled node archive not found and compilation is…
- locked mode requires lockfile to be enabled hint: Remove…
AI-assisted analysis of jdx/mise@533346cc37 (2026-09-17).
Data as JSON: /api/errors/95c449a5d8922daf.
Report an issue: GitHub.
Appendix: source
Thrown at src/plugins/core/node.rs:136
ExtractionFormat::TarGz,
&ExtractOptions {
strip_components: 1,
pr: Some(ctx.pr.as_ref()),
..Default::default()
},
)?;
Ok(())
})
.await?
{
FetchOutcome::Downloaded => {
warn_patches_not_applied();
Ok(())
}
FetchOutcome::NotFound => {
if ctx.locked {
if let Some(message) = node_flavor_not_found_message(opts) {
bail!("{message}\nlocked mode requires the locked precompiled artifact")
}
bail!(
"precompiled node archive not found and locked mode requires the locked precompiled artifact"
)
} else if Settings::get().node_compile(CompilePurpose::Inspect) != Some(false) {
if let Some(message) = node_flavor_not_found_message(opts) {
warn!("{message}");
}
self.install_compiling(ctx, tv, opts).await
} else {
if let Some(message) = node_flavor_not_found_message(opts) {
bail!("{message}\ncompilation is disabled")
}
bail!("precompiled node archive not found and compilation is disabled")
}
}
}
}View on GitHub (pinned to 533346cc37)