Dashboard › cli › Distillation
e65b19a7-9ff2-48e6-860b-e6a767737231["lore_tm_v1_fZtCs7q5B3saJb6jC2zRLbPCFnqzprg8MgcRk3gNN3g","lore_tm_v1_qMhUbhlUC3D6LNptVFZjyYXIo1E9jUNNdfAhRliqbYs","lore_tm_v1_29l6u3mzRZaGTTGRPa4Nv9fEAcp15eUNg8Yc1wynlco","lore_tm_v1_7UYWzjOpWz6OtEMlTL1bXSo7zXPjHvpZ749NjsnBMts","lore_tm_v1_UVNIstJgrWt8xojRoUdqO8G7ySVA1Bj2Vn11nsn1trE","lore_tm_v1_QLsHn16KtdLzwPQq3YIonT1yBYHuQ8blyLCDUTJyshE","lore_tm_v1_VLn3dGqxPYZ5HMoKMvjM7vJKFex-DqaDGfbxJoeGYPE"]
packages/cli/src/commands/build/upload.ts:157-184 defines uploadCommand with an array positional parsed by String, placeholder "path", brief "Path(s) to the build(s) to upload (APK, AAB, IPA, or XCArchive)", and no minimum.build upload documentation describes uploading mobile builds for preprod size analysis through deterministic ZIP normalization and the chunk-upload + assemble protocol; supported formats are Android APK/AAB, iOS XCArchive directories, and IPA. iOS Assets.car catalogs are not parsed into per-asset images, and the feature only works with Sentry SaaS.build upload examples, in order: sentry build upload ./app-release.apk; sentry build upload ./MyApp.xcarchive; sentry build upload ./MyApp.ipa --build-configuration Release; sentry build upload ./app.aab --install-group qa --install-group beta.build upload flags: optional parsed build-configuration, release-notes, head-sha, base-sha, vcs-provider, head-repo-name, base-repo-name, head-ref, base-ref, and pr-number (using parsePrNumber); repeatable optional parsed install-group; and optional booleans force-git-metadata and no-git-metadata.packages/cli/src/commands/build/upload.ts:270-273 defines async *func(this: SentryContext, flags: UploadFlags, ...paths: string[]); zero paths deliberately reach the command body and throw new ValidationError("At least one build path is required", "path").build upload resolves organization/project through resolveOrgAndProject({ cwd: this.cwd, usageHint: USAGE_HINT }); unresolved context throws new ContextError("Organization and project", USAGE_HINT).build upload rejects simultaneous --force-git-metadata and --no-git-metadata with new ValidationError("--force-git-metadata and --no-git-metadata cannot be used together", "force-git-metadata").build upload computes shouldCollectVcs as Boolean(flags["force-git-metadata"]) || (!flags["no-git-metadata"] && isCi(this.env)), collecting VCS metadata automatically in CI unless disabled or whenever forced."org/project/trace-id", parse: String, and brief "[<org>/<project>/]<trace-id> - Target (optional) and trace ID (required)"."Path(s) to envelope file(s)", parse: String, and optional: true.minimum rather than hard-coding every array as required. Planned to reconcile this reviewer finding across all array commands, rerun focused gates, and freeze a new exact head.Classify array positional cardinality and add fail-first minimum regressions (in_progress, high); 2. Implement minimum-aware positional introspection and command metadata (pending, high); 3. Regenerate artifacts and run focused plus full validation (pending, high); 4. Commit corrected changes and obtain immutable-head correctness review (pending, high); 5. Push reviewed head to PR #1558 and update PR metadata (pending, high); 6. Resolve review threads, monitor exact-head CI, and merge PR #1558 (pending, high).fix/agent-conversation-reference-root-cause tracking origin/pr-1558 [gone].packages/cli/script/generate-command-docs.ts, packages/cli/script/generate-skill-markdown.ts, packages/cli/src/lib/introspect.ts, packages/cli/test/lib/introspect.property.test.ts, packages/cli/test/lib/introspect.test.ts, and packages/cli/test/script/generate-skill-markdown.test.ts.