Repository navigation
fix(attachments): stop using attachment SHA1 metadata - #1265
Merged
Merged
Conversation
Objectstore-backed attachments intentionally store empty checksums, so SHA1 from the list API is misleading. Drop it from the event attachment schema and tool output. Co-Authored-By: Jan Michael Auer <jan.auer@sentry.io>
Co-Authored-By: Jan Michael Auer <jan.auer@sentry.io>
jan-auer
marked this pull request as ready for review
August 25, 2026 13:34
lcian
approved these changes
Aug 25, 2026
BYK
pushed a commit
that referenced
this pull request
Sep 30, 2026
`sentry help --json` returned structured help, but the `--help` forms agents reach for first (`sentry --help --json`, `sentry issue --help --json`, `sentry issue list --help --json`) fell through to Stricli's built-in text usage and ignored `--json`. This rewrites a flag-based `--help --json` request to the dedicated `help` command during argv preprocessing (`preprocessArgv`), so all `--help` forms now emit the same JSON as `sentry help --json`. The rewrite only fires when **both** `--help` and `--json` are present before any `--` escape — a bare `--help` keeps Stricli's text usage unchanged — and `--fields` is carried through for field selection. ## Testing - `pnpm exec vitest run test/lib/argv-hoist.test.ts test/lib/argv-hoist.property.test.ts test/commands/help.test.ts` (89 passed) - `tsc --noEmit` clean, `biome check` clean on changed files - Manual: verified `sentry --help --json`, `sentry issue --help --json`, and `sentry issue list --help --json` produce valid JSON identical to the `help` command; bare `--help` still shows text usage; invalid command returns a JSON error (exit 60); `-- tool --help --json` after an escape is not rewritten Closes #1265 <!-- ## Plan Root cause: `--help` is intercepted by Stricli's built-in scanner before any command func runs, and Stricli ignores `--json`. The `help` command already produces structured JSON (introspectAllCommands / introspectCommand) but only via the dedicated `sentry help ...` path. There is already an argv-preprocessing layer (`preprocessArgv` in src/lib/argv-hoist.ts) that normalizes `--version` across route depths — the natural place to normalize `--help --json` too. Changes: - src/lib/argv-hoist.ts: - Add `rewriteHelpJsonRequest(argv)`: scans tokens (stopping at `--`), and when both `--help` and `--json` are present, returns `["help", "--json", ...path]` (+ `--fields <v>` when present); returns null otherwise. - Wire it into `preprocessArgv` before the `--version` / hoist steps. - test/lib/argv-hoist.test.ts: unit + integration tests. Scope note: intentionally minimal — only reroutes when `--json` is also present. --> --------- Co-authored-by: jared-outpost[bot] <jared-outpost[bot]@users.noreply.github.com>
mr-danya
pushed a commit
to mr-danya/sentry-mcp
that referenced
this pull request
Oct 6, 2026
`sentry help --json` returned structured help, but the `--help` forms agents reach for first (`sentry --help --json`, `sentry issue --help --json`, `sentry issue list --help --json`) fell through to Stricli's built-in text usage and ignored `--json`. This rewrites a flag-based `--help --json` request to the dedicated `help` command during argv preprocessing (`preprocessArgv`), so all `--help` forms now emit the same JSON as `sentry help --json`. The rewrite only fires when **both** `--help` and `--json` are present before any `--` escape — a bare `--help` keeps Stricli's text usage unchanged — and `--fields` is carried through for field selection. ## Testing - `pnpm exec vitest run test/lib/argv-hoist.test.ts test/lib/argv-hoist.property.test.ts test/commands/help.test.ts` (89 passed) - `tsc --noEmit` clean, `biome check` clean on changed files - Manual: verified `sentry --help --json`, `sentry issue --help --json`, and `sentry issue list --help --json` produce valid JSON identical to the `help` command; bare `--help` still shows text usage; invalid command returns a JSON error (exit 60); `-- tool --help --json` after an escape is not rewritten Closes getsentry#1265 <!-- ## Plan Root cause: `--help` is intercepted by Stricli's built-in scanner before any command func runs, and Stricli ignores `--json`. The `help` command already produces structured JSON (introspectAllCommands / introspectCommand) but only via the dedicated `sentry help ...` path. There is already an argv-preprocessing layer (`preprocessArgv` in src/lib/argv-hoist.ts) that normalizes `--version` across route depths — the natural place to normalize `--help --json` too. Changes: - src/lib/argv-hoist.ts: - Add `rewriteHelpJsonRequest(argv)`: scans tokens (stopping at `--`), and when both `--help` and `--json` are present, returns `["help", "--json", ...path]` (+ `--fields <v>` when present); returns null otherwise. - Wire it into `preprocessArgv` before the `--version` / hoist steps. - test/lib/argv-hoist.test.ts: unit + integration tests. Scope note: intentionally minimal — only reroutes when `--json` is also present. --> --------- Co-authored-by: jared-outpost[bot] <jared-outpost[bot]@users.noreply.github.com>
This branch was previously deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Sentry objectstore-backed attachments intentionally store empty checksums on the attachment model.
get_event_attachmentwas still requiring and printing that SHA1, which made list output look broken even when size and download metadata were fine.This removes attachment SHA1 from the event attachment schema and from list/download tool output. Upstream API responses may still include the field; we no longer depend on it.
Ref FS-491
Ref #1267
Requested by async jauer.
--
View Junior Session [Sentry]