different-ai/openwork · error

Recovery download failed with HTTP ${response.status}.

Error message

Recovery download failed with HTTP ${response.status}.

What it means

Error "Recovery download failed with HTTP ${response.status}." thrown in different-ai/openwork.

Source

Thrown at apps/desktop/electron/recovery.mjs:195

  }
  return releases;
}

export function recoveryVersionMarkers(installedVersion, persistedState) {
  const currentVersion = stableVersion(installedVersion);
  const persistedCurrent = stableVersion(persistedState?.currentVersion);
  const persistedPrevious = stableVersion(persistedState?.previousVersion);
  return {
    currentVersion,
    previousVersion: persistedCurrent && persistedCurrent !== currentVersion
      ? persistedCurrent
      : persistedPrevious,
  };
}

export async function cacheVerifiedRecoveryArtifact({ app, artifact, fetchArtifact }) {
  const response = await fetchArtifact(artifact.url);
  if (!response.ok) throw new Error(`Recovery download failed with HTTP ${response.status}.`);
  const bytes = Buffer.from(await response.arrayBuffer());
  const checksum = createHash("sha512").update(bytes).digest("base64");
  if (checksum !== artifact.sha512) throw new Error("Recovery installer checksum did not match its signed manifest.");
  const cacheDirectory = path.join(app.getPath("userData"), RECOVERY_CACHE_DIRECTORY);
  const stagingDirectory = `${cacheDirectory}.staging`;
  const backupDirectory = `${cacheDirectory}.backup`;
  const fileName = path.basename(new URL(artifact.url).pathname);
  await rm(stagingDirectory, { recursive: true, force: true });
  await mkdir(stagingDirectory, { recursive: true });
  await writeFile(path.join(stagingDirectory, fileName), bytes);
  await writeFile(
    path.join(stagingDirectory, "metadata.json"),
    `${JSON.stringify({ ...artifact, checksum, fileName }, null, 2)}\n`,
    "utf8",
  );
  await rm(backupDirectory, { recursive: true, force: true });
  let previousMoved = false;
  try {

View on GitHub (pinned to 2b7df46e8a)

When it happens

Trigger: Thrown at apps/desktop/electron/recovery.mjs:195 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of different-ai/openwork@2b7df46e8a (2026-09-01). Data as JSON: /api/errors/570ed8407793c294. Report an issue: GitHub.