jdx/mise · error
could not reuse the fetched setup preview
Error message
could not reuse the fetched setup preview
What it means
Fallback failure in seed_confirmed_fetch: after user consent, mise tried to reuse the already-fetched preview store's git objects to seed the real store (avoiding a re-download) and this reuse failed (e.g. missing repo, fetch-from-local-URL error). The message signals the optimization failed and the caller should fall back to a normal fetch.
Source
Thrown at src/system/history/sync/onboard.rs:363
}
/// Reuse the fully fetched preview after consent, without touching local HEAD
/// or importing preview decisions. The following normal remote fetch still
/// discovers newer commits and recomputes against current local state.
fn seed_confirmed_fetch(store: &Store, preview: &Store) -> Result<()> {
let _sync = run::lock(store)?;
let source = preview
.repo()
.ok_or_else(|| eyre::eyre!("preview requires git"))?;
let destination = store
.repo()
.ok_or_else(|| eyre::eyre!("setup requires git"))?;
let url = url::Url::from_file_path(source.dir())
.map_err(|_| eyre::eyre!("cannot address the preview repository"))?;
let refspec = format!("+{UPSTREAM_REF}:{UPSTREAM_REF}");
let copied = destination.network(["fetch", "--no-tags", "--", url.as_str(), &refspec])?;
if !copied.status.success() {
bail!("could not reuse the fetched setup preview");
}
Ok(())
}
/// Whether this host reaches the repository on its own: with the
/// session's GitHub relay (its `url.<relay>.insteadOf` rewrites travel as
/// `GIT_CONFIG_KEY_n`/`GIT_CONFIG_VALUE_n`) taken out of the environment.
/// Without a relay, whatever works now keeps working.
async fn durable_access(url: &str, branch: &str) -> bool {
if std::env::var_os("MISE_GITHUB_RELAY_SOCKET").is_none() {
return true;
}
let Some(git) = crate::file::which_spawnable("git") else {
return true;
};
if super::network::validate_url(url).is_err() {
return false;
}View on GitHub (pinned to afd2eddd3a)
Solutions
- Retry the operation so the normal remote fetch path runs instead of the seeding shortcut
- Check that the preview store's git directory still exists and is readable
- If it recurs, investigate git object transfer between the two store repos
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at src/system/history/sync/onboard.rs:363 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of jdx/mise@afd2eddd3a (2026-09-09).
Data as JSON: /api/errors/7bd41f515d74d7fa.
Report an issue: GitHub.