Repository navigation
Update java-v9 branch - #20247
Update java-v9 branch#20247
Conversation
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
… various minor improvements (#19797) Changing some copy, as I hope it will make first timers understand our release cadence & how often they should upgrade, better.
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
…20109) <!-- Keep the urgency section so automation can prioritize this PR. You may delete other sections you don't need. --> ## DESCRIBE YOUR PR Adds a link to the [Size Analysis status check rules API](https://docs.sentry.io/api/mobile-builds/retrieve-size-analysis-status-check-rules-for-a-project/) in the Status Checks section of the Size Analysis overview page, so readers can find how to read a project's rules programmatically without digging into the CI integration guide. ## IS YOUR CHANGE URGENT? - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ ## PRE-MERGE CHECKLIST - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs) <!-- junior-request-attribution:start --> via **max.topolsky**. <!-- junior-request-attribution:end --> <!-- junior-session-footer:start --> <!-- junior-conversation-id:slack%3AC0C688S96UU%3A1792502714.313099 --> -- [View Junior Session](https://junior-prod.sentry.dev/conversations/slack%3AC0C688S96UU%3A1792502714.313099) [[Sentry]](https://sentry.sentry.io/explore/conversations/slack%3AC0C688S96UU%3A1792502714.313099/?project=4510944073809921) <!-- junior-session-footer:end --> --------- Co-authored-by: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com> Co-authored-by: Max Topolsky <max.topolsky@sentry.io>
## DESCRIBE YOUR PR Removes `next_trace` from the predefined `sentry.link.type` values in the span links develop docs. No SDK sets this link type, and the product doesn't read it. Span links only point to spans that already exist, and the next trace doesn't exist yet when the current trace is sent. The trace view finds the next trace the other way around: it searches for a trace whose `previous_trace` link points at the current trace (see `useFindLinkedTraces.ts` in getsentry/sentry). The JS SDK already marks `next_trace` as "Not set by the SDK". `next_trace` is also still listed as an enum value in `sentry-conventions` (`sentry__link__type.json`). That can be cleaned up separately. ## IS YOUR CHANGE URGENT? - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ ## PRE-MERGE CHECKLIST - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs) <!-- junior-request-attribution:start --> via **Sigrid Huemer**. <!-- junior-request-attribution:end --> <!-- junior-session-footer:start --> <!-- junior-conversation-id:slack%3AC0CATDDN8TW%3A1792509038.539669 --> -- [View Junior Session](https://junior-prod.sentry.dev/conversations/slack%3AC0CATDDN8TW%3A1792509038.539669) [[Sentry]](https://sentry.sentry.io/explore/conversations/slack%3AC0CATDDN8TW%3A1792509038.539669/?project=4510944073809921) <!-- junior-session-footer:end --> Co-authored-by: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com> Co-authored-by: Sigrid Huemer <sigrid.huemer@sentry.io>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
The NestJS docs still recommend manual scope wrappers for handlers the SDK already isolates. Document automatic isolation for scheduled tasks, event handlers, and BullMQ processors, and use a BullMQ lifecycle listener to demonstrate when manual isolation is still needed. Fixes getsentry/sentry-javascript#19767 ([JS-1923](https://linear.app/getsentry/issue/JS-1923)). ## IS YOUR CHANGE URGENT? - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ Co-authored-by: OpenAI GPT-6 <codex@openai.com>
…#19996) ## DESCRIBE YOUR PR Most SDKs no longer need `enable_logs` / `enable_metrics` for their manual logs and metrics APIs, and several have removed the options. A few shared pages still told readers to set them: - **What to Log guide:** drops the removed flags from the Ruby (SDK 7.0) and Flutter (SDK 10) tabs, and switches the JavaScript tab to `consoleLoggingIntegration`, since `captureConsoleIntegration` sends console calls as errors, not logs. - **Sentry Basics table:** the Logs row now says "Add log calls or a logging integration" instead of "Enable `enableLogs: true`". - **Manage Application Metrics quota:** "Disabling Metrics" now recommends returning `null` from `beforeSendMetric` (or the SDK's equivalent) instead of `enableMetrics` options that were removed or no longer work. - **Manage Logs quota:** drops the removed `enableLogs` from the JavaScript example and `enable_logs` from the Python example, and fixes the Python example's invalid keyword syntax. - **Rails quick start:** adds a note that Rails structured logging is disabled by default since Ruby SDK 7.1.0, using the Rails Logs page's wording. The guide's Python, .NET, Swift and Kotlin tabs keep their flags for now. The flags still turn on logging integrations in Python 2.x, .NET 6.x and Java/Android 8.x, and the Apple docs still describe `enableLogs` as required (follow-up). Refs SDK-1533 ## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs to go live. Select exactly one option. For deadlines, replace `YYYY-MM-DD` with the due date. You can update this information later by editing the PR description. - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ ## SLA - Teamwork makes the dream work, so please add a reviewer to your PRs. - Please give the docs team up to 1 week to review your PR unless you've supplied a deadline. Thanks in advance for your help! ## PRE-MERGE CHECKLIST _Make sure you've checked the following before merging your changes:_ - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs) --------- Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
<!-- Keep the urgency section so automation can prioritize this PR. You may delete other sections you don't need. --> ## DESCRIBE YOUR PR Adds a short "SCIM 2.0 Service Discovery" subsection under SCIM Provisioning on the [SSO page](https://docs.sentry.io/organization/authentication/sso/#scim-provisioning), and links to it from the SAML2 page's SCIM section. It covers the RFC 7644 Section 4 discovery endpoints (`ServiceProviderConfig`, `ResourceTypes`, `Schemas`) that getsentry/sentry#119884 completed: they live under the SCIM URL shown in Sentry's auth settings, they require the same Auth Token as the rest of the SCIM API, and identity governance platforms such as SailPoint IdentityIQ need them to connect. The per-endpoint reference pages are already live under [/api/scim/](https://docs.sentry.io/api/scim/) from the automatic schema bump, so this PR is prose only. The matching update to the intro text on the `/api/scim/` page is in getsentry/sentry#126535. Neither PR depends on the other. #### Issues * Refs: getsentry/sentry#114950 * Refs: ENG-7619 ## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs to go live. Select exactly one option. For deadlines, replace `YYYY-MM-DD` with the due date. You can update this information later by editing the PR description. - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
## DESCRIBE YOUR PR The Python options page lists `trace_ignore_status_codes` as type `bool`, but the option takes a set of HTTP status codes. This changes the documented type to `AbstractSet[int]`. The default (`frozenset()`) and description stay as they are. Source evidence (sentry-python `2.72.0`, the latest release): - [`sentry_sdk/consts.py`](https://github.com/getsentry/sentry-python/blob/2.72.0/sentry_sdk/consts.py#L1448) declares `trace_ignore_status_codes: "AbstractSet[int]" = frozenset()` - [`sentry_sdk/tracing.py`](https://github.com/getsentry/sentry-python/blob/2.72.0/sentry_sdk/tracing.py#L1024) checks membership with `status_code in client.options["trace_ignore_status_codes"]` Corrected claim: `trace_ignore_status_codes` is `AbstractSet[int]` (for example `{403, 404}`), not `bool`. cc @getsentry/owners-python-sdk ## IS YOUR CHANGE URGENT? - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ <!-- junior-request-attribution:start --> via Junior system actor `event`. <!-- junior-request-attribution:end --> <!-- junior-session-footer:start --> <!-- junior-conversation-id:agent-dispatch%3Adispatch_51ed2321cd7553f06241dff253dee523 --> -- [View Junior Session](https://junior-prod.sentry.dev/conversations/agent-dispatch%3Adispatch_51ed2321cd7553f06241dff253dee523) [[Sentry]](https://sentry.sentry.io/explore/conversations/agent-dispatch%3Adispatch_51ed2321cd7553f06241dff253dee523/?project=4510944073809921) <!-- junior-session-footer:end --> --------- Co-authored-by: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com> Co-authored-by: Ivana Kellyer <ivana.kellyer@sentry.io>
## DESCRIBE YOUR PR follow up to #19365 This fixes the Deno guide: - Load `@sentry/deno/import` with `deno run --preload`, not as the first import of the entry file. - `--allow-read` is required when the hook is loaded. Without it, the app stops at start with `NotCapable: Requires read access`. The guide said that the SDK continues without it. - The troubleshooting entry for the JSON crash now says to remove the `--preload` flag. ## Why Deno loads the whole static import graph before the first import runs. With the first-import setup, the hook instrumented only CommonJS packages such as `pg` and `mysql`. ES module packages such as `openai` and `hono` stayed uninstrumented, with no warning (tested with `@sentry/deno` 11.8.0 on Deno 2.8.3). ## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs to go live. Select exactly one option. For deadlines, replace `YYYY-MM-DD` with the due date. You can update this information later by editing the PR description. - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ ## SLA - Teamwork makes the dream work, so please add a reviewer to your PRs. - Please give the docs team up to 1 week to review your PR unless you've supplied a deadline. Thanks in advance for your help! ## PRE-MERGE CHECKLIST _Make sure you've checked the following before merging your changes:_ - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…#19990) ## DESCRIBE YOUR PR Applies the quick start template from #19295 (Ember) to the .NET landing page and 15 .NET guides: ASP.NET, ASP.NET Core, AWS Lambda, Azure Functions Worker, Blazor Server, Blazor WebAssembly, Entity Framework, MAUI, WinForms, WinUI, WPF, Xamarin, .NET for Android, .NET for Apple (iOS/Mac Catalyst), and Google Cloud Functions. All pages keep their single-column layout. The Serilog, NLog, log4net and Microsoft.Extensions.Logging pages are logging integration guides and are unchanged. - Removes the onboarding option checkboxes and `___PRODUCT_OPTION___` markers. - Configure names the features each guide sets up. The init snippets include all options by default, and a note explains that unwanted options can be removed. - **Logs:** `SentrySdk.Logger` works without an extra option. Guides whose logging integrations need it (ASP.NET Core, AWS Lambda, Azure Functions Worker, Blazor WebAssembly, MAUI) include `EnableLogs = true`. Xamarin and Google Cloud Functions have no Send Logs step because the Logs docs mark them as unsupported. - **Application Metrics:** enabled by default (SDK 6.1.0+); every guide except Xamarin has a Send Application Metrics step. `Sentry.Xamarin` depends on Sentry 4.x, which doesn't have the current metrics API, so the Metrics page now lists Xamarin as not supported. - **Profiling:** on the .NET for Apple guide, and as an optional step for .NET 8 and later on the .NET landing page, outside the default install and snippet. The docs mark it unsupported on Android and Google Cloud Functions. - **Session Replay:** named on .NET for Android and .NET for Apple, where it's documented. - Simplifies Verify. The shared `getting-started-verify/dotnet*.mdx` snippets are unchanged because other .NET guides (Serilog, NLog, log4net, etc.) also render them. - Fixes along the way: the AWS Lambda snippet used `o.TracesSampleRate` inside an `options =>` lambda (also broken on `master`); a few stale links and anchors on the Android and Apple guides; Google Cloud Functions' `DiagnosticsLevel` typo (now `DiagnosticLevel`) with the JSON wrapped in `{}`; metric attributes use `Dictionary<string, object>` initializers so the snippets compile on .NET Framework (C# 7.3); every ASP.NET Core setup tab sets the DSN; and the Android guide keeps Session Replay text and image masking on. ## IS YOUR CHANGE URGENT? - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ ## PRE-MERGE CHECKLIST - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs) <!-- junior-request-attribution:start --> via Junior system actor `event`. <!-- junior-request-attribution:end --> <!-- junior-session-footer:start --> <!-- junior-conversation-id:slack%3AD0BB8KQT6MU%3A1792013336.218129 --> -- [View Junior Session](https://junior-prod.sentry.dev/conversations/slack%3AD0BB8KQT6MU%3A1792013336.218129) [[Sentry]](https://sentry.sentry.io/explore/conversations/slack%3AD0BB8KQT6MU%3A1792013336.218129/?project=4510944073809921) <!-- junior-session-footer:end --> --------- Co-authored-by: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com> Co-authored-by: Shannon Anahata <shannon.anahata@sentry.io>
## DESCRIBE YOUR PR The PHP options page documents the `before_breadcrumb` callback as returning a non-nullable `\Sentry\Breadcrumb`. The same section says the breadcrumb is dropped when nothing is returned. The SDK expects the callback to return `?\Sentry\Breadcrumb` and drops the breadcrumb on `null`. This makes the return type nullable and says `null` explicitly. Source evidence (sentry-php `4.34.0`, the latest release): - [`src/Options.php`](https://github.com/getsentry/sentry-php/blob/4.34.0/src/Options.php#L898) documents the callback as `callable(Breadcrumb): ?Breadcrumb` for both the getter and the setter - [`src/State/Hub.php`](https://github.com/getsentry/sentry-php/blob/4.34.0/src/State/Hub.php#L227-L235) runs the callback and adds the breadcrumb only `if ($breadcrumb !== null)` Corrected claim: `function (\Sentry\Breadcrumb $breadcrumb): ?\Sentry\Breadcrumb`. Returning `null` drops the breadcrumb. cc @Litarnus @stayallive ## IS YOUR CHANGE URGENT? - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ <!-- junior-request-attribution:start --> via **Martin Linzmayer**. <!-- junior-request-attribution:end --> <!-- junior-session-footer:start --> <!-- junior-conversation-id:agent-dispatch%3Adispatch_51ed2321cd7553f06241dff253dee523 --> -- [View Junior Session](https://junior-prod.sentry.dev/conversations/agent-dispatch%3Adispatch_51ed2321cd7553f06241dff253dee523) [[Sentry]](https://sentry.sentry.io/explore/conversations/agent-dispatch%3Adispatch_51ed2321cd7553f06241dff253dee523/?project=4510944073809921) <!-- junior-session-footer:end --> Co-authored-by: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com>
…20128) ## DESCRIBE YOUR PR The Python integration and agent tracing pages only describe `send_default_pii`. This adds the `data_collection` alternative, naming the specific key that controls each behavior. - Web framework pages: mention `data_collection` next to `send_default_pii` - Django, Flask: `user_info` - Redis, PyMongo, clickhouse-driver: `database_query_data` - GQL, Graphene, Ariadne, Strawberry: `graphql` and `http_bodies` (also fixes a typo on the Strawberry page claiming body capture was on by default) - MCP and agent tracing pages: `gen_ai`, and that `include_prompts` is ignored when `data_collection` is set - Rust Tracing: `data_collection` doesn't affect `include_tracing_fields` - Data Collected: `outgoing_response` is a valid `http_bodies` type and part of the default (used by Ariadne and Strawberry) - Mention `data_collection` before `send_default_pii` everywhere, and note that `send_default_pii` will be removed in version 3.0 of the SDK (also updates Options, Data Collected and Sensitive Data, which said it would only be deprecated eventually) - AI pages and Data Collected: clarify that prompts, messages, and responses aren't recorded by default, but some tool data is (tool definitions, LangChain and Google GenAI tool calls, MCP arguments), and how to remove it Init snippets still use `send_default_pii=True`; that'll be handled separately. ## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs to go live. Select exactly one option. For deadlines, replace `YYYY-MM-DD` with the due date. You can update this information later by editing the PR description. - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ ## SLA - Teamwork makes the dream work, so please add a reviewer to your PRs. - Please give the docs team up to 1 week to review your PR unless you've supplied a deadline. Thanks in advance for your help! ## PRE-MERGE CHECKLIST _Make sure you've checked the following before merging your changes:_ - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs)
## DESCRIBE YOUR PR Replace `send_default_pii=True` in Python init snippets with a `data_collection` example, using the key that fits each page. `send_default_pii` will be removed in version 3.0 of the SDK. - `user_info`: shared getting-started/config includes, general pages, web frameworks, logging, feature flags, etc. - `gen_ai`: AI agent tracing pages and MCP - `queues`: Celery, RQ - `database_query_data`: aiomysql - `graphql`: Strawberry Snippets demonstrating `include_prompts`, `event_scrubber`, or Rust Tracing's `include_tracing_fields` keep `send_default_pii`, since those only work with it. The GQL, Graphene, Ariadne, and second Strawberry snippets are left alone because #20128 keeps them as the `send_default_pii` alternative. Related: #20128 ## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs to go live. Select exactly one option. For deadlines, replace `YYYY-MM-DD` with the due date. You can update this information later by editing the PR description. - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ ## SLA - Teamwork makes the dream work, so please add a reviewer to your PRs. - Please give the docs team up to 1 week to review your PR unless you've supplied a deadline. Thanks in advance for your help! ## PRE-MERGE CHECKLIST _Make sure you've checked the following before merging your changes:_ - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs)
…20131) ## DESCRIBE YOUR PR The manual AI and MCP instrumentation pages implied that prompt, response, and tool content you set yourself is only captured with `send_default_pii=True`. The SDK doesn't filter manually set attributes based on `send_default_pii` or `data_collection`, so this updates the pages to say that. - Manual Instrumentation: replace the `send_default_pii` claim, and point the privacy reference at `data_collection` - MCP custom instrumentation: align the tool-argument comment with the prompt examples on the same page Related: #20128 ## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs to go live. Select exactly one option. For deadlines, replace `YYYY-MM-DD` with the due date. You can update this information later by editing the PR description. - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ ## SLA - Teamwork makes the dream work, so please add a reviewer to your PRs. - Please give the docs team up to 1 week to review your PR unless you've supplied a deadline. Thanks in advance for your help! ## PRE-MERGE CHECKLIST _Make sure you've checked the following before merging your changes:_ - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs)
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
…es to search (#19870) ## DESCRIBE YOUR PR - New product page for Explore feature as a whole - New dropped data feature page - New searchable properties pages for Logs and Metrics - Updated explore-related pages to link to new explore page **Note:** Screenshots and arcades are pending EA-ready updates for dropped data. ## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs to go live. Select exactly one option. For deadlines, replace `YYYY-MM-DD` with the due date. You can update this information later by editing the PR description. - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [x] Other deadline: 2026-10-16 - [ ] No deadline: Not urgent, can wait up to 1 week+ ## SLA - Teamwork makes the dream work, so please add a reviewer to your PRs. - Please give the docs team up to 1 week to review your PR unless you've supplied a deadline. Thanks in advance for your help! ## PRE-MERGE CHECKLIST _Make sure you've checked the following before merging your changes:_ - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs) --------- Co-authored-by: Shannon Anahata <shannonanahata@gmail.com> Co-authored-by: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
…#20225) ## DESCRIBE YOUR PR Production build URLs (`sentry-docs-<hash>.sentry.dev`) now serve their own pages to requests that have an `x-sentry-evals-pin` header, instead of 308ing them to docs.sentry.io. Everyone else is still redirected as in #19033, and these responses still get `X-Robots-Tag: noindex`. [sentry-for-ai-evals](https://github.com/getsentry/sentry-for-ai-evals) compares a docs PR's preview with the docs at the PR's merge base, and that commit's production build is the only copy of those. The redirect sends the evals to the live docs instead, so a PR that's behind master gets everything master gained since counted as its own change. The evals' docs proxy sends the header, and #20214 points the base at the merge base's build. Like the redirect, the header isn't a security boundary: previews are already public, and an old build only has docs that were once live. Only builds made after this merges check for the header, so older merge bases keep reading the live docs. Refs [VDY-307](https://linear.app/getsentry/issue/VDY-307/onboarding-evals-ai-evals-label-workflow-in-sentry-docs) ## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs to go live. Select exactly one option. For deadlines, replace `YYYY-MM-DD` with the due date. You can update this information later by editing the PR description. - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ ## SLA - Teamwork makes the dream work, so please add a reviewer to your PRs. - Please give the docs team up to 1 week to review your PR unless you've supplied a deadline. Thanks in advance for your help! ## PRE-MERGE CHECKLIST _Make sure you've checked the following before merging your changes:_ - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs) 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
## DESCRIBE YOUR PR Adds an `AI Evals` workflow that runs the [sentry-for-ai-evals](https://github.com/getsentry/sentry-for-ai-evals) suites on a PR labeled `ai-evals:<mark>[:<models>][:x<count>]`, the same labels sentry-for-ai uses. Both sides use the skills from sentry-for-ai's `main`, so only the docs differ. The head reads docs.sentry.io from the PR's Vercel preview ([sentry-for-ai-evals#77](getsentry/sentry-for-ai-evals#77)), and the base reads the production deploy of the PR's merge base. Results go to evals.sentry.dev, whose bot comments on the PR with each label's runs, and a new push reruns every eval label still on the PR. - The plan job waits for the Vercel preview before it creates the runs, since evals.sentry.dev fails a run that gets no result for 30 minutes. A preview is ready about 7 minutes after a push. If Vercel skips the sentry-docs build (a PR that only changes develop-docs), the build fails, or a newer push supersedes the commit, the job stops without starting any evals. - Each test a label selects runs in its own job, on each side and each target the label picked, so tests don't share a container and run at the same time ([sentry-for-ai-evals#90](getsentry/sentry-for-ai-evals#90)). A last `:x<count>` runs each test that many times ([sentry-for-ai-evals#94](getsentry/sentry-for-ai-evals#94)). Jobs are named by the test's number and pass run-evals `test-index`, `test-total` and `count`, so this repo's logs don't name the internal repo's tests ([sentry-for-ai-evals#97](getsentry/sentry-for-ai-evals#97)). - Production deploys redirect every page to docs.sentry.io unless the request has the header the evals' docs proxy sends ([#20225](#20225), [sentry-for-ai-evals#96](getsentry/sentry-for-ai-evals#96)). A merge base whose deploy was built before #20225, or that has no production deploy, still redirects, so the base reads the live docs and the plan job warns with how many of `master`'s commits the head is missing. Updating the branch reruns the evals. - `labels.yml` gets `ai-evals:llms_txt:sonnet-5.5:x3`, which runs the test that starts from llms.txt three times per side on Sonnet 5.5, for PRs that change llms.txt. That test gives the agent no Sentry skills or MCP, only the docs ([sentry-for-ai-evals#92](getsentry/sentry-for-ai-evals#92), [#89](getsentry/sentry-for-ai-evals#89)). Unlike sentry-for-ai there's no `ai-evals:products` label, since it starts 8 jobs on every push. The label sync deletes any label missing from that file, so it also adds `Good First Issue` and `js-v11-docs`, which exist on the repo but not in the file. - Fork PRs get no secrets, so the workflow skips them. Tested through [#20217](#20217), #20116's diff on top of this branch: `ai-evals:llms_txt:opus-5.5` completed with the head reading the preview's llms.txt, and `ai-evals:llms_txt:x3` passed 6 of 6 on each side. Then on this PR, rebased on #20225: `ai-evals:llms_txt:sonnet-5.5:x3` passed 3 of 3 on each side, with the base reading the merge base's production deploy and the jobs named `test 1` to `test 3`. The fallback ran locally: #20116's merge base, built before #20225, gets the live docs and the warning (102 commits behind). Fixes [VDY-307](https://linear.app/getsentry/issue/VDY-307/onboarding-evals-ai-evals-label-workflow-in-sentry-docs) ## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs to go live. Select exactly one option. For deadlines, replace `YYYY-MM-DD` with the due date. You can update this information later by editing the PR description. - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ ## SLA - Teamwork makes the dream work, so please add a reviewer to your PRs. - Please give the docs team up to 1 week to review your PR unless you've supplied a deadline. Thanks in advance for your help! ## PRE-MERGE CHECKLIST _Make sure you've checked the following before merging your changes:_ - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs) 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
…#20014) ## DESCRIBE YOUR PR Applies the quick start template from #19295 (Ember) to the Godot quick start (`docs/platforms/godot/index.mdx`), single-column. - Configure names Error Monitoring (crashes plus script and shader errors), Tracing (SDK 2.2.0+), Logs, Application Metrics and User Feedback. Session Replay and Profiling aren't supported and are left out. - Project Settings stays the primary setup path. The code snippet (for initializing in code with Auto Init off) turns on Tracing and scene tree attachments, with a note that unwanted options can be removed. Screenshots (experimental) are linked from Next Steps instead of turned on. - **Logs** (always on since 2.2.0) and **Application Metrics** (on by default since 2.0.0): new steps, no setting needed. - Debug symbols, Android export and C# error capture moved into Configure. - Simplifies Verify to a single test message. `platform-includes/getting-started-config/godot.mdx` changed; it's only rendered by the Godot quick start. ## IS YOUR CHANGE URGENT? - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ ## PRE-MERGE CHECKLIST - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs) <!-- junior-request-attribution:start --> via **shannon.anahata**. <!-- junior-request-attribution:end --> <!-- junior-session-footer:start --> <!-- junior-conversation-id:slack%3AD0BB8KQT6MU%3A1792013336.218129 --> -- [View Junior Session](https://junior-prod.sentry.dev/conversations/slack%3AD0BB8KQT6MU%3A1792013336.218129) [[Sentry]](https://sentry.sentry.io/explore/conversations/slack%3AD0BB8KQT6MU%3A1792013336.218129/?project=4510944073809921) <!-- junior-session-footer:end --> --------- Co-authored-by: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com> Co-authored-by: Shannon Anahata <shannon.anahata@sentry.io>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
## DESCRIBE YOUR PR docs.sentry.io/llms.txt and the root `SKILL.md` send agents to `skills.sentry.dev/workflows` and `/features`. Both return a 404, because their skills were removed from [sentry-for-ai](https://github.com/getsentry/sentry-for-ai). Over 3 days of skills.sentry.dev CDN logs, they still got 41 and 27 requests. This PR replaces them with links to the skills that exist today. All of them return 200 now. - **`scripts/generate-llms-txt.mjs`** (the "Browse the skill library" list in llms.txt): keep All Skills, and replace SDK Setup, Workflows and Features with Get Started, Instrument, Debug an Issue, Alerts and OTel Collector. - **`SKILL.md`:** - Make the same link swap. This also replaces `/sdks`, which is only a redirect to `/instrument`. - Change the install line to `npx @sentry/agent-plugin install`, so it matches llms.txt and the [Agent Plugin page](https://docs.sentry.io/ai/agent-plugin/). **Verification** - `pnpm lint` and `pnpm test` pass (497 tests). - I ran `scripts/generate-llms-txt.mjs` locally. Every `skills.sentry.dev` link in the output returns 200: | URL | Status | | --- | --- | | `https://skills.sentry.dev/` | 200 | | `https://skills.sentry.dev/sentry-get-started/SKILL.md` | 200 | | `https://skills.sentry.dev/instrument` | 200 | | `https://skills.sentry.dev/sentry-debug-issue/SKILL.md` | 200 | | `https://skills.sentry.dev/sentry-create-alert/SKILL.md` | 200 | | `https://skills.sentry.dev/sentry-otel-exporter-setup/SKILL.md` | 200 | ## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs to go live. Select exactly one option. For deadlines, replace `YYYY-MM-DD` with the due date. You can update this information later by editing the PR description. - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ ## SLA - Teamwork makes the dream work, so please add a reviewer to your PRs. - Please give the docs team up to 1 week to review your PR unless you've supplied a deadline. Thanks in advance for your help! ## PRE-MERGE CHECKLIST _Make sure you've checked the following before merging your changes:_ - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…20234) ## DESCRIBE YOUR PR Fixes #20226. When no platform is active, `PlatformLink` points at `/platform-redirect/?next=<encoded path>`. `sanitizeNext` returned only `url.pathname`, so the anchor was dropped from both the redirect and the links on the selection page. Around 770 `PlatformLink` uses carry an anchor. Reproduced before the fix: ``` $ curl -sI '.../platform-redirect/?next=/configuration/options/%23tracing-options&platform=python' HTTP/2 307 location: /platforms/python//configuration/options/ ← no fragment, and a double slash ``` The fragment can't just be appended to the returned path — `page.tsx` feeds that value into `nodeForPath(...pathname.split('/'))`, so a `#frag` segment would break doc tree resolution and fall through to *"We couldn't find documentation for this path"*. So the path and the fragment are now returned separately, and only the two URL-building sites append the fragment. - `sanitizeNext` returns `{pathname, hash}`; every doc tree lookup keeps using `pathname` alone - Fragments are allowlisted (`/^#[\w.-]+$/`, which covers slugs like `godot_logger.event_mask`); an unrecognized fragment is dropped rather than failing the whole redirect - Adds `platformUrlFor`, which joins the platform URL with the path without leaving the `//` that made **every** platform redirect 308 a second time - Drive-by: four `PlatformLink`s had a trailing slash appended *after* the fragment by older trailing-slash tooling, so their anchors matched nothing. The two Flutter ones also pointed through a redirect at an id that no longer exists, and now go straight to `/debug-symbols/#when-to-upload-debug-symbols` ### Security The existing hardening is deliberately untouched — the colon guard still runs on the whole decoded string before parsing (so `javascript:`/`data:` are still rejected), the origin check is unchanged, and a fragment is only ever appended to a doc-tree-resolved URL, so it can't influence the origin. New tests cover `/a/#@example.com` and `/a/#//example.com` being dropped, plus `%2523` double-encoding. ### Verification - 516/516 vitest tests pass (25 in `utils.spec.ts`, up from 16) - `tsc`, eslint and prettier clean - `pnpm lint:trailing-slash` clean — the current linter is already fragment-aware, so the four fixed anchors don't regress ## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs to go live. Select exactly one option. For deadlines, replace `YYYY-MM-DD` with the due date. You can update this information later by editing the PR description. - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ ## SLA - Teamwork makes the dream work, so please add a reviewer to your PRs. - Please give the docs team up to 1 week to review your PR unless you've supplied a deadline. Thanks in advance for your help! ## PRE-MERGE CHECKLIST _Make sure you've checked the following before merging your changes:_ - [ ] Checked Vercel preview for correctness, including links - [ ] PR was reviewed and approved by any necessary SMEs (subject matter experts) - [ ] PR was reviewed and approved by a member of the [Sentry docs team](https://github.com/orgs/getsentry/teams/docs) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Co-authored-by: sentry-api-schema-updater[bot] <271575301+sentry-api-schema-updater[bot]@users.noreply.github.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
1 Skipped Deployment
|
|
Please update the IS YOUR CHANGE URGENT? section of the PR description:
This information helps the Docs team prioritize your review. |
|
🏷 The following changes will be made to the repository labels |
|
The change publishes a week of documentation and routing updates. A former redirect now serves a landing page. Platform redirects keep heading fragments. Watch page loads, 404 counts, client TypeErrors, and redirect failures. An issue escalates when 404s or TypeErrors rise, or when those redirects fail. Services: Mention PlanWhat changedRequests to This ships when sentry-docs and develop-docs deploy. Shared RiskA bad Intended effectConfirmed means the new Explore landing is reachable and platform-redirect still serves. Product page loads hold or rise. Platform-redirect keeps its volume and stays at zero error spans.
Classified request volume on docs held at 2.18M-2.31M user requests per 24h. Use that to judge a traffic shift versus a broken path. Query Regression watchWatch 404s first. The Explore redirect is gone, so a missing landing page 404s
If 404s rise, check Not observablePer-URL loads for static pages. Pageload queries on |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 764affd. Configure here.
| echo "sha=$base_tip" >> "$GITHUB_OUTPUT" | ||
| if (( behind > 0 )); then | ||
| echo "::warning::The merge base $merge_base has no production deploy that serves its own pages, so the base reads the live docs. The head is missing $behind of the base branch's commits, so the preview lacks changes the live docs have, and the comparison counts their removal as part of this PR. Update the branch to compare only this PR's changes, which reruns the evals." | ||
| fi |
There was a problem hiding this comment.
Base evals missing live docs URL
Medium Severity
When the merge base has no pin-capable production deploy, the base step sets sha but never sets url. base-docs-url is then empty, and base-revision eval jobs pass a blank docs-url into run-evals. The comments describe falling back to the live docs, but that URL is never written.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit 764affd. Configure here.
…20244) ## DESCRIBE YOUR PR The Python `max_request_body_size` option docs say the `small` cutoff "depends on the SDK (typically 4KB)". In the Python SDK, `small` captures request bodies up to 1,000 bytes and `medium` captures bodies up to 10,000 bytes. **Source evidence (sentry-python `2.73.0`):** `request_body_within_bounds` in [`sentry_sdk/integrations/_wsgi_common.py`](https://github.com/getsentry/sentry-python/blob/2.73.0/sentry_sdk/integrations/_wsgi_common.py#L55-L66) drops the body when `bodies == "small" and content_length > 10**3` or `bodies == "medium" and content_length > 10**4`. The WSGI, Starlette, Tornado, Ariadne, and Dramatiq integrations all use this helper. **Corrected wording:** - `small`: Only small request bodies (up to 1,000 bytes) will be captured. - `medium`: Medium and small request bodies (up to 10,000 bytes) will be captured. cc @getsentry/owners-python-sdk @sentrivana @alexander-alderman-webb ## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs to go live. - [ ] Urgent deadline (GA date, etc.): YYYY-MM-DD - [ ] Other deadline: YYYY-MM-DD - [x] No deadline: Not urgent, can wait up to 1 week+ <!-- junior-request-attribution:start --> via [automation `sched_fe39d4dd0d4e77a4b4463de325041d04`](https://junior-prod.sentry.dev/automations/sched_fe39d4dd0d4e77a4b4463de325041d04) · Run ID `sched_fe39d4dd0d4e77a4b4463de325041d04:1793088000000`. <!-- junior-request-attribution:end --> <!-- junior-session-footer:start --> <!-- junior-conversation-id:agent-dispatch%3Adispatch_ebf5f0d7704acbc7b78cc23a35e9d8b7 --> -- [View Junior Session](https://junior-prod.sentry.dev/conversations/agent-dispatch%3Adispatch_ebf5f0d7704acbc7b78cc23a35e9d8b7) [[Sentry]](https://sentry.sentry.io/explore/conversations/agent-dispatch%3Adispatch_ebf5f0d7704acbc7b78cc23a35e9d8b7/?project=4510944073809921) <!-- junior-session-footer:end --> Co-authored-by: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com>


Weekly automated sync of
masterintojava-v9.Brings in 126 commits from
master.Please merge with a merge commit (not squash) after review.
via automation
sched_ad73d0ab6d1d56c93807b4c35dcc4acd· Run IDsched_ad73d0ab6d1d56c93807b4c35dcc4acd:1793089800000.--
View Junior Session [Sentry]