Dashboard › cli › Distillation
86b139c8-bd03-4245-a3b7-af7512290db3["lore_tm_v1_Wpb-M2HTiRr8Nwx0RitCnVdVWVCaIJ0rH_7Kh0llXPY","lore_tm_v1_LNBmXXxIFYwXKVQmFGjutx22KVw_tQqsImN8wjBNQwg","lore_tm_v1_9KWSTNQl23CmCjLsJu7kfSIZWHIKrqpDtAHnJqImREI","lore_tm_v1_bs9hgIjUicob9LfTLLTwS-iOOouKUSy4q24u4AZQYio","lore_tm_v1_0Cw2SiU9GU5o7EWXuzo06t5E8np33aRXis7f7XWDmaY"]
/home/byk/.local/share/opencode/worktree/0e8c2f3bbe145a3280d6fb6ed900a5121f382cf0/toolkit-bridge-upgrade/packages/cli/src/lib/upgrade.ts must always check Homebrew first because stored install information may be stale; the Homebrew-first check appears at line 356, before the stored-info path at line 363./home/byk/.local/share/opencode/worktree/0e8c2f3bbe145a3280d6fb6ed900a5121f382cf0/toolkit-bridge-upgrade/packages/cli/src/commands/cli/upgrade.ts:250-257, offline upgrades are therefore supported only for curl installations; offline && method !== "curl" throws UpgradeError("unsupported_operation", "Offline upgrade is only supported for curl-installed binaries.").curl (GitHub) lookup because nightly builds are GitHub-only, regardless of the current installation method. In /home/byk/.local/share/opencode/worktree/0e8c2f3bbe145a3280d6fb6ed900a5121f382cf0/toolkit-bridge-upgrade/packages/cli/src/commands/cli/upgrade.ts:320-331, lookupMethod is channel === "nightly" ? "curl" : method, then versionExists(lookupMethod, target) validates the pinned version and throws UpgradeError("version_not_found", \Version ${target} not found`)` if absent.binpatch matches in /home/byk/.local/share/opencode/worktree/0e8c2f3bbe145a3280d6fb6ed900a5121f382cf0/toolkit-bridge-upgrade/pnpm-lock.yaml: line 136 binpatch:, line 2169 binpatch@0.4.2:, and line 6698 binpatch@0.4.2: {}./packages/cli/src/lib/version-check.ts lines 286 (fetchLatestNightlyVersion(signal)) and 287 (fetchLatestFromGitHub(signal)); /packages/cli/src/lib/upgrade.ts lines 399 (fetchLatestFromGitHub), 467 (fetchLatestNightlyVersion), 498 (fetchLatestVersion), 503 (fetchLatestNightlyVersion()), 506 (fetchLatestFromGitHub() conditional), 551 (versionExists), 902 (downloadBinaryToTemp), and 1131 (downloadBinaryToTemp(version, downloadTag, offline, setMessage)); /packages/cli/src/commands/cli/upgrade.ts lines 136 (network-error fallback documentation), 289 (fetchLatestVersion(method, channel)), and 325 (versionExists(lookupMethod, target))./home/byk/.local/share/opencode/worktree/0e8c2f3bbe145a3280d6fb6ed900a5121f382cf0/toolkit-bridge-upgrade/packages/cli/src/commands/cli/upgrade.ts:285-335, resolveTargetVersion() fetches latest via fetchLatestVersion(method, channel), strips VERSION_PREFIX_REGEX from an explicit versionArg, returns a structured "checked" result for flags.check, and skips an already-current target only when neither flags.force nor channelChanged applies./home/byk/.local/share/opencode/worktree/0e8c2f3bbe145a3280d6fb6ed900a5121f382cf0/toolkit-bridge-upgrade/packages/cli/src/commands/cli/upgrade.ts:340-367, buildCheckResult() sets action: "checked", currentVersion, targetVersion, channel, method, and forced; when the target differs from CLI_VERSION, its warning is Run 'sentry cli upgrade ${target}' to update. for an explicitly pinned non-channel version, otherwise Run 'sentry cli upgrade' to update../home/byk/.local/share/opencode/worktree/0e8c2f3bbe145a3280d6fb6ed900a5121f382cf0/toolkit-bridge-upgrade/packages/cli/src/commands/cli/upgrade.ts:369-379 are SPAWN_MAX_ATTEMPTS = 5 and SPAWN_RETRY_BASE_MS = 500; delay is attempt * base. The retry addresses EBUSY from uv_spawn when Defender/SmartScreen temporarily locks a newly written executable for antivirus scanning./home/byk/.local/share/opencode/worktree/0e8c2f3bbe145a3280d6fb6ed900a5121f382cf0/toolkit-bridge-upgrade/packages/cli/src/commands/cli/upgrade.ts found exactly 3 related references: line 463 mentions downloadBinaryToTemp’s visibility-race retry loop and CLI-1D3; line 642 calls executeUpgrade(method, target, downloadTag, offline, setMessage); line 727 calls executeUpgrade("curl", target, downloadTag, undefined, setMessage).