jdx/mise · error
unsupported task cache store version {}; expected {}
Error message
unsupported task cache store version {}; expected {} What it means
After composing the local (and optional remote) task cache stores, mise asserts the store's reported version equals TASK_CACHE_STORE_VERSION (currently 1, defined in task_cache_store.rs). A mismatch means the on-disk/remote store layout was written by an incompatible store implementation relative to this mise build.
Source
Thrown at src/task/task_cache.rs:431
base_url,
namespace,
token: settings.task.cache.remote_token.clone(),
token_file: settings.task.cache.remote_token_file.clone(),
oidc_audience: settings.task.cache.remote_oidc_audience.clone(),
connect_timeout: settings.http_timeout(),
read_timeout: settings.http_timeout(),
download_timeout: settings.http_download_timeout(),
retries: settings.http_retries(),
},
staging_dir: cache_dir.join("remote"),
mode,
})
} else {
None
};
let store = compose_task_cache_stores(local, remote)?;
if store.version() != TASK_CACHE_STORE_VERSION {
bail!(
"unsupported task cache store version {}; expected {}",
store.version(),
TASK_CACHE_STORE_VERSION
);
}
Ok(TaskArtifactCache {
root,
cache_dir,
store,
key,
action: encoded,
explanation,
state_path,
limits,
})
}
}
View on GitHub (pinned to 6f52dcdf99)
Solutions
- Align mise versions everywhere that shares the cache (upgrade the older side)
- Clear the task cache directory (default under the OS cache dir, 'task-artifacts') so a fresh store is created
- Point the remote cache (settings task.cache_dir / remote config) at a per-version directory or endpoint
- If it persists on matching versions, report it — the version constant should never drift within one build
Example fix
# shell — before: mixed mise versions share ~/.cache/task-artifacts
# after: clear and repin
rm -rf "${XDG_CACHE_HOME:-$HOME/.cache}/task-artifacts"
mise use -g mise@2026.1.6 # pin one version across CI and devs Defensive patterns
Strategy: fallback
Validate before calling
mise --version # confirm the version before touching a shared cache
du -sh "${XDG_CACHE_HOME:-$HOME/.cache}/task-artifacts" 2>/dev/null Try / catch
On this error, bypass the cache for the run (disable the cache setting or clear the dir) and complete the build uncached, then reconcile versions afterward.
Prevention
- Pin one mise version across all writers of a shared cache
- Scope cache_dir per mise major version in CI
- Clear the task cache after upgrading mise if formats changed
When it happens
Trigger: Sharing one cache directory or remote cache endpoint between different mise versions whose store protocols differ; downgrading mise after a newer version migrated the store; a remote cache server implementing a different store version.
Common situations: CI fleet pinning different mise versions but sharing a cache volume or HTTPS remote; developers on stable and colleagues on a bleeding-edge build; rolling back mise after an upgrade wrote a new-format store.
Related errors
- task cache manifest does not match cache key
- task {} cache outputs must not contain source {}
- task cache manifest contains duplicate or nested roots
- task cache archive is missing {}
- task cache artifact checksum mismatch
AI-assisted analysis of jdx/mise@6f52dcdf99 (2026-08-22).
Data as JSON: /api/errors/8d87799445a961f9.
Report an issue: GitHub.