Dashboard › cli › Distillation
9d54f57a-483a-4108-b2c3-359b1773c19b["lore_tm_v1_qTiX7gCeRmb_K247iDH9ydeYiliJcBDLThfUvj2mEsQ","lore_tm_v1_yO1Z8ggOy3iQdlMKwB2YrKpHDqe1J0qkcYbisRLIlI0","lore_tm_v1_uloiz2nBaS59uQByW6pTxoxchjZis8lmu0PrZ-0I7ms","lore_tm_v1_xj18gRT9tPK83WAhpkMQ1_OdihZBqYMG8ViWIMXQG48","lore_tm_v1_aduaxeewLsOUHfqEhwoWdnm-HiTjklAUX2ifSwjQx44"]
Date: Sep 10, 2026
DO-NOT-MERGE with three MUST-FIX blockers: raw prefetched-release provenance bypass, pinned stable targets inheriting the persisted nightly changelog channel, and GHCR retries losing non-Error abort reasons.prefetchedReleases to accept branded NormalizedGitHubReleases and pass isNormalizedForSource() before reuse; absent or mismatched branding must return null or fetch from the selected source—“never normalize caller-supplied raw prefetched data.”packages/cli/src/lib/release-notes.ts:430-438,640-642,746: unbranded GitHubRelease[] arrays were reinterpreted under the caller-provided source, defeating the structural source branding in packages/cli/src/lib/delta-upgrade.ts:75-120; packages/cli/test/lib/release-notes.test.ts:390-419 preserved this unwanted behavior.packages/cli/src/commands/cli/upgrade.ts:276-280,1023-1029,1037-1043: getArtifactChannel() returned trackingChannel for every non-nightly target, so sentry cli upgrade 1.2.3 while tracking nightly installed through stable npm/GitHub assets but requested a nightly changelog, which a nightly current version’s timestamp parsing would normally suppress.target: a nightly target uses nightly; every other target uses stable.packages/cli/src/lib/ghcr.ts:79-97,135-150: fetchWithRetry() normalized the caught value to Error before comparison with externalSignal.reason, losing identity for string, number, symbol, or plain-object reasons and converting cancellation into UpgradeError("network_error").externalSignal.reason unchanged.packages/cli/test/lib/ghcr.test.ts:441-451 covered only an Error reason.16 changed files/tests were inspected only through immutable Git objects; no tests were executed because worktree access would violate the review constraint.packages/cli/src/lib/binary.ts, packages/cli/src/lib/ghcr.ts, packages/cli/src/lib/upgrade.ts, packages/cli/src/commands/cli/upgrade.ts, and packages/cli/src/lib/release-notes.ts.signal.reason; test updates for branded type boundaries and primitive/object cancellation were still in progress.