Dashboard › cli › Distillation
cbb9f82a-adea-4e45-92b2-02b660d4cccb["lore_tm_v1_mimxlt_jlkRLPXBxULzgoFpX_-Rki4suI5O01lOdjZw","lore_tm_v1_QQkX2ScYobcd3mfEqUUYnSyFjq4f55KDSXItkyARUIU","lore_tm_v1_hYp8-YnfhAoaIDdvrjAPrt1z1kJOO9U8tSOuzx8hPpM","lore_tm_v1_SiatK3UKBHenfh9q60YzstMoQTEKjC0seJerXVbn0mI","lore_tm_v1_NCwDGa4zzO6a6eKKj3pJjX03gTrmfoVBOg-56EL8qF8"]
Date: September 9, 2026
packages/cli/src/lib/ghcr.ts contains 11 identified functions: buildSignal() at line 60, fetchWithRetry() at line 97, getAnonymousToken() at line 192, fetchManifest() at line 227, fetchNightlyManifest() at line 265, getNightlyVersion() at line 280, findLayerByFilename() at line 302, downloadNightlyBlob() at line 332, fetchTagPage() at line 427, listTags() at line 471, and downloadLayerBlob() at line 513.package.json defines workspace name toolkit-cli-workspace, version 0.0.0, "private": true, "type": "module", package manager pnpm@10.11.0, and Node.js engine requirement >=18.0.package.json scripts are: tsx, cli, dev, build, build:all, bundle, typecheck, lint, lint:fix, test, test:unit, test:changed, test:e2e, test:init-eval, generate:parser, generate:sdk, generate:skill, generate:banner, generate:docs, generate:docs-sections, generate:schema, generate:command-docs, eval:skill, bench, bench:save, bench:compare, bench:sweep, check:fragments, check:deps, check:errors, check:patches, check:docs-sections, and check:stale-refs; each delegates through pnpm --filter sentry run <script>.package.json patches @stricli/core@1.2.8 via packages/cli/patches/@stricli%2Fcore@1.2.8.patch, @sentry/core@10.63.0 via packages/cli/patches/@sentry%2Fcore@10.63.0.patch, and @sentry/node-core@10.63.0 via packages/cli/patches/@sentry%2Fnode-core@10.63.0.patch.esbuild@>=0.17.0 <0.28.1 → 0.28.1, js-yaml@<3.15.0 → 3.15.0, shell-quote@<1.8.4 → 1.8.4, qs@>=6.11.1 <=6.15.1 → 6.15.2, form-data@<4.0.6 → 4.0.6, and vite → 8.0.16; onlyBuiltDependencies contains only esbuild.src/lib/patch-cache.ts: version-check.ts imports cleanupPatchCache, upgrade.ts imports clearPatchCache, and delta-upgrade.ts creates an instrumented cache with instrumentCache(makeCache(join(getConfigDir(), "patch-cache"))); the cache key format shown is patch-chain:${fromVersion}-${toVersion}.src/lib/upgrade.ts defines NIGHTLY_TAG = "nightly" and NPM_REGISTRY_URL = "https://registry.npmjs.org/sentry"; versioned nightly OCI tags use nightly-${version}, while rolling nightly installs use the nightly tag.src/lib/ghcr.ts defines GHCR_REPO = "getsentry/cli" and GHCR_REGISTRY = "https://ghcr.io"; anonymous tokens use ${GHCR_REGISTRY}/token?scope=repository:${GHCR_REPO}:pull, manifests use ${GHCR_REGISTRY}/v2/${GHCR_REPO}/manifests/${tag}, blobs use ${GHCR_REGISTRY}/v2/${GHCR_REPO}/blobs/${digest}, and tag listing begins with ${GHCR_REGISTRY}/v2/${GHCR_REPO}/tags/list?n=${TAGS_PAGE_SIZE}.ghcr.io may return a direct 200 response or redirect with 301, 302, 307, or 308; the common 307 redirect leads to an Azure Blob Storage signed URL.src/lib/delta-upgrade.ts uses GitHub releases with ?per_page=12, imports GHCR_REPO as the single source of truth, uses registry https://ghcr.io, and maps target nightly versions to tags via (version) => \nightly-${version}``.src/lib/release-notes.ts requests GitHub releases with ?per_page=${CHANGELOG_MAX_RELEASES} and fetches commits from https://api.github.com/repos/getsentry/cli/commits?sha=main&since=${sinceDate}&until=${untilDate}&per_page=100.src/lib/binary.ts:isMusl() actually uses two ordered heuristics: 1. check for /lib/ld-musl-<arch>.so.1, mapping x64 to x86_64 and other architectures to aarch64; 2. run spawnSync("ldd", ["--version"], { stdio: ["ignore", "pipe", "pipe"] }) and search combined stdout/stderr case-insensitively for "musl". It immediately returns false on non-Linux platforms and caches the result in cachedIsMusl.src/lib/binary.ts defines InstallationMethod as "curl" | "brew" | "npm" | "pnpm" | "bun" | "yarn" | "unknown"; VALID_METHODS excludes "unknown", and parseInstallationMethod(value) lowercases input before validation, throwing Invalid method: ${value}. Must be one of: ${VALID_METHODS.join(", ")} for unrecognized methods.