Dashboard › cli › Distillation
5734cf38-9b94-4042-a0e3-00097dfe8042["lore_tm_v1_-3kUvoL8n6UY__6jE1umMBlcAJGShuJ05kAKOLCUZmA"]
Date: September 10, 2026
checkForUpdateInBackgroundImpl() never throws; errors are caught and reported to Sentry.packages/cli/src/lib/version-check.ts documents checkForUpdateInBackgroundImpl() as non-blocking: it starts a fetch in the background and reports errors to Sentry in a detached span.packages/cli/src/lib/version-check.ts wraps shouldCheckForUpdate() in try/catch; if database access fails, it calls Sentry.captureException(error) and returns without crashing the CLI.packages/cli/src/lib/delta-upgrade.ts replaces direct use of GITHUB_RELEASES_URL and GHCR_REPO with source-aware imports getGitHubReleasesUrl, PRIMARY_UPGRADE_SOURCE, and UpgradeSource from ./binary.js.packages/cli/src/lib/delta-upgrade.ts changes stableSource() to stableSource(source: UpgradeSource). It obtains the release endpoint with getGitHubReleasesUrl(source) and supplies a wrapped sourceFetch to githubReleaseSource(...).stableSource(source), sourceFetch only rewrites successful release-list responses when source.tagPrefix is present and the requested URL starts with ${releasesUrl}?; other responses pass through unchanged.stableSource(source), rewritten GitHub release-list responses are validated with isGitHubRelease, exclude draft and prerelease entries, retain only releases whose tag_name starts with source.tagPrefix, and strip that prefix from the returned tag_name.fetchRecentReleases(signal?: AbortSignal, source: UpgradeSource = getPrimaryUpgradeSource()) in packages/cli/src/lib/delta-upgrade.ts requests ${getGitHubReleasesUrl(source)}?per_page=12 with GitHub API accept headers and User-Agent: sentry-cli/${CLI_VERSION}.fetchRecentReleases(...) returns [] for non-OK responses, non-array JSON, or caught errors; valid arrays are filtered through isGitHubRelease, exclude drafts and prereleases, require tag_name to begin with source.tagPrefix, and return tags with that prefix removed.prefetchStablePatches(targetVersion: string, signal?: AbortSignal, source: UpgradeSource = getPrimaryUpgradeSource()) now invokes prefetch(stableSource(source), targetVersion, signal), making stable patch prefetching source-aware while defaulting to the primary upgrade source.