Dashboard › cli › Distillation
Distillation
ID: 1c97b316-ddd4-4e46-b873-3d12586a36f3
Generation: 0
Tokens: 604
R_compression: 6.770
C_norm: 0.000
Archived: No
Created: 2026-09-10 06:54:51
Source IDs:
["lore_tm_v1_9XG8aA9NGlH-uweOJR7Oyr1hM8_6vypGIf6hR336grA"]
Observations
Date: Sep 10, 2026
- 🔴 (04:20) User stated package managers always need network to fetch and install packages; therefore offline upgrades are supported only for curl-installed binaries, and validateMethod() throws UpgradeError("unsupported_operation", "Offline upgrade is only supported for curl-installed binaries.") when offline is true and method !== "curl".
- 🔴 (04:20) User stated nightly builds are GitHub-only and version existence checks for the nightly channel must always use the curl/GitHub lookup regardless of the current installation method.
- 🔴 (04:20) User supplied the command example
sentry cli upgrade nightly with the exact meaning “Switch to nightly channel and update”.
- 🔴 (04:20) User supplied changes in packages/cli/src/commands/cli/upgrade.ts adding imports for isNightlyVersion and type UpgradeSource from ../../lib/binary.js.
- 🔴 (04:20) User supplied a validateMethod() signature change removing the channel: ReleaseChannel parameter; it now receives method: InstallationMethod, versionArg: string | undefined, and offline: boolean.
- 🔴 (04:20) User supplied Homebrew pinned-version validation that treats the channel aliases in CHANNEL_VERSIONS as unpinned, strips VERSION_PREFIX_REGEX from other version arguments, and rejects a pinned Homebrew version only when !isNightlyVersion(pinnedVersion). The thrown error remains UpgradeError("unsupported_operation", "Homebrew does not support installing a specific version. Run 'brew upgrade getsentry/tools/sentry' to upgrade to the latest formula version.").
- 🔴 (04:20) User supplied target resolution now returning
{ kind: "target", target: resolvedTarget, source } rather than { kind: "target", target }, carrying an UpgradeSource into execution.
- 🔴 (04:20) User supplied removal of the prior inline pinned-version existence-validation block that selected
lookupMethod = channel === "nightly" ? "curl" : method, called versionExists(lookupMethod, target), and threw UpgradeError("version_not_found", Version ${target} not found) when absent; target/source resolution now handles this elsewhere.
- 🔴 (04:20) User supplied nightly migration dispatch based on the resolved target version:
isNightlyVersion(target) && method !== "curl" replaces the prior channel === "nightly" && method !== "curl" condition.
- 🔴 (04:20) User supplied that a non-curl installation targeting a nightly version migrates to a standalone binary through migrateToStandaloneForNightly(), which now additionally receives source and channel alongside method, target, versionArg, noAgentSkills, and json.
- 🔴 (04:20) User supplied that executeStandardUpgrade() now additionally receives source alongside method, channel, versionArg, target, execPath, entryPath, pathEnv, offline, json, and noAgentSkills.