Requested by: @chadwhitacre
Merge target: (default)
Quick links:
Assign the accepted label to this issue to approve the release.
Targets
Checked targets will be skipped (either already published or user-requested skip). Uncheck to retry a target.
📋 Changelog
New Features ✨
Aci
- Add organizations:workflow-engine-metric-alert-endpoints-delete flag to allow deletes in the legacy API in #115382
- Add deprecation headers to legacy rule endpoints in #114080
- Add a warning banner for no connections on an Alert by saponifi3d in #114772
Agent Ui
- Track analytics event when explorer session times out by aliu39 in #115350
- Add session timeout detection by aliu39 in #115147
Autofix
- Add feature flag for seer-autofix-introspection by Zylphrex in #115503
- Support coding agents from plan step by Zylphrex in #115335
- Link read_file to exact line if available by Zylphrex in #115292
- Add high-level autofix settings update helper in #115037
- Disable rethink when textarea empty by aliu39 in #112896
- Better autoscroll on autofix drawer by Zylphrex in #114869
Cells
- Populate org listing fields on control serializer by lynnagara in #115513
- Remove legacy organization invite path by lynnagara in #115198
- Remove features from the org listing endpoint by lynnagara in #115007
- Remove features from organization summary by lynnagara in #115000
- Drop deprecated requireEmailVerification field by lynnagara in #115003
- Start replicating organization avatar by lynnagara in #114999
- Replicate OrganizationAvatar to OrganizationAvatarReplica via outbox in #114781
Cmdk
- Default to keepPreviousData in cmdkQueryOptions in #115085
- Add webhooks keyword to Custom Integrations action by JonasBa in #114974
Codeowners
- Support excluding subdirectories via no-owner rules in #115322
- Display exclusion rules in ownership rules table in #115391
Dashboards
- Repair MCP dashboard widget filters in #115543
- Render widget thresholds in Slack unfurl chartcuterie chart in #115384
- Use widget-aware chart type for Slack unfurl in #115313
- Add widget-aware chartcuterie chart type by DominikB2014 in #115312
- Avoid issue assignee row fetches by scttcper in #115296
- Suggest Sentry Built dashboards in empty custom state by DominikB2014 in #115104
- Create HeatMapWidgetVisualization component by gggritso in #114916
- Add
app.vitals.* support to mobile vitals dashboards by buenaflor in #113046
- Add All Dashboards tab and rename existing to Custom by DominikB2014 in #114904
Dynamic Sampling
- Add query chunking iterator by shellmayr in #115063
- Use config in per-org pipeline in #114850
Explore
- Heat map tooltip surfaces z-axis value alongside y-axis bucket in #115560
- Enable heat map tooltips on click in #115413
- Hide arrays behind feature flag to avoid any production failures by manessaraj in #115295
- Support array-includes query syntax (
field[*]:value) by manessaraj in #115070
- Raise top events color max from 5 to 9 by JoshuaKGoldberg in #114890
Forms
- Migrate Sentry App schema forms behind a flag by priscilawebdev in #114953
- Expose a unified form.ResetButton in #115072
- Add sentry-app-schema-form-migration flag in #114945
Heatmap
- Add log axis by wmak in #115068
- Add heatmap endpoint by wmak in #114780
Issues
- Implement UI for new Seer actions included in issue activity by shashjar in #115525
- GA new stack trace frontend by scttcper in #115520
- Record Seer events for display in the issue activity timeline by shashjar in #115486
- Add structured LLM context to saved issue views route by Mihir-Mavalankar in #115438
- Add more samples links to Slow DB Query evidence by scttcper in #114938
- Clean up empty state project lookup by scttcper in #114652
Iswf
- Updates retry ignore/silence lists for Sentry App tasks by GabeVillalobos in #115005
- Removes retry decorator from workflow_engine tasks by GabeVillalobos in #114937
- Bumps version for taskbroker-client, updates instrumented_task decorator by GabeVillalobos in #114936
Logs
- Add copy link action to logs table row cell menus by JonasBa in #115221
- Update backend instrumentation for sync export path by manessaraj in #114891
Onboarding
- Add stream_gen_ai_spans to Python agent monitoring init options in #115470
- Add streamGenAiSpans to JS agent monitoring init options by obostjancic in #115371
- Add platformProductInfo.generated.ts for SCM info-only platforms by jaydgoss in #115092
- Add platformProductInfo codegen script by jaydgoss in #115177
Otlp
- The OTLP endpoints are GA in #115049
- The OTLP endpoints are GA (FE) by Dav1dde in #115051
Ourlogs
- Increase infinite query timeouts to 15s with increasing 30s continuations by JoshuaKGoldberg in #113999
- Add ourlogs-schema-hints-removal feature flag in #115108
- Remove schema hints behind feature flag / query parameter in #115109
- Add ourlogs-pinning flag by JoshuaKGoldberg in #115073
- Bump export modal select default value from 100 to 500 for release to GA by JoshuaKGoldberg in #115008
Preprod
- Wire up snapshot_status search field in frontend in #115596
- Add snapshot_status search field with comparison state filters in #115580
- Make snapshot image detail endpoint comparison-aware by NicoHinderling in #115572
- Handle no_base_build comparison state in snapshot table by mtopo27 in #115562
- Add latest-base snapshot lookup endpoint by NicoHinderling in #115498
- Add single-image metadata endpoint for snapshots by NicoHinderling in #115495
- Add compact_metadata param to snapshot details endpoint by NicoHinderling in #115494
- Add PR comments for snapshot base-build edge cases by NicoHinderling in #115460
- Add Snapshot Settings link to snapshot details menu by mtopo27 in #115481
- Add auto_approved status to snapshot UI by mtopo27 in #115388
- Add grace period before failing status check for missing base by NicoHinderling in #115448
- Add auto_approved status to snapshot approval in #115291
- Add timeout warning for image optimization insights by NicoHinderling in #115216
- Add description and tags fields to ImageMetadata by NicoHinderling in #115220
- Add CSV download to size compare items changed table by mtopo27 in #115202
- Add logging when builds are filtered out by quota or project settings by NicoHinderling in #115195
- Add per-category controls for snapshot PR comments UI in #114838
Repos
- Add sync now button and polling logic in repos v2 by evanpurkhiser in #114998
- Move sync status from footer into per-install repository count tag by evanpurkhiser in #114865
- Add installation settings button and drawer in repos v2 by evanpurkhiser in #114792
Seer
- Populate SeerAgentRun alongside SeerRun in agent client in #115601
- Add GitLab support to seer preferences endpoint in #115424
- Add Seer plan flags to structured context check by Mihir-Mavalankar in #115571
- Pass api.web referrer from autofix UI by chromy in #115546
- Add reaction_added webhook handler for Seer agent feedback by leeandher in #115490
- Add CLI, Linear agent, and MCP autofix referrers by chromy in #115514
- Accept referrer input on GroupAutofixEndpoint by chromy in #115497
- Expose replay search RPC by JoshFerge in #115500
- Wire explorer chat write site through SeerRun outbox by trevor-e in #115231
- Wire legacy autofix write site through SeerRun outbox by trevor-e in #115228
- Add outbox receiver for SeerRun creation by trevor-e in #115111
- Enable context engine for all Seer plan orgs in explorer in #115452
- Add structured LLM context for logs and releases pages by Mihir-Mavalankar in #115293
- Add feature flag to enable Code Mode for Slack Explorer by azulus in #115233
- Add structured LLM context for issue taxonomy pages in #115153
- Copy changes and fixup links between pages by ryan953 in #114918
- Make the Autofix settings open in a drawer from the org settings page by ryan953 in #114933
- Create Seer sub-nav items, and SCM requirement interstitial by ryan953 in #114896
- Suppress re-triage of skipped issues in night shift by trevor-e in #114915
- Add event-specific LLM context hint for issue event route by Mihir-Mavalankar in #114926
- Add check for
seer-gitlab-support in the /seer/onboarding-check/ endpoint by ryan953 in #113851
- Move seer default settings into flyout panels & rm overview page by ryan953 in #114599
- Add check for
seer-gitlab-support to billing/subscription screens by ryan953 in #113855
- Add check for
seer-gitlab-support to the seer config reminder by ryan953 in #113852
Sentry Apps
- Use RPC recipient resolution in webhook disable notifications by Christinarlong in #115157
- Validate org membership before sending webhook disable emails in #114799
- Add disable/enable toggle to _admin sentry app details by Christinarlong in #114910
- Skip webhook dispatch for disabled sentry apps by Christinarlong in #114620
- Allow staff to toggle is_disabled via existing CRUD endpoint by Christinarlong in #114777
Settings
- Convert project environments table to FC by scttcper in #115493
- Remove withProject in #114587
Slack
- Update Seer linking message after identity link by alexsohn1126 in #114752
- Default Explore unfurl interval to match frontend by DominikB2014 in #114867
Snapshots
- Move snapshot endpoints into their own subfolder by NicoHinderling in #115501
- Add success logs for PR comments and status checks in #115437
- Add frontend logic for downloading images zip by NicoHinderling in #115338
- Add endpoint for downloading images zip by NicoHinderling in #115337
- Add context.test_file_path to snapshot JSON metadata by mtopo27 in #115112
Spans
- Add duplicate span detection metrics to process-segments consumer by untitaker in #115190
- Add opt-in logging for flushed segments by untitaker in #114989
- Add semantic partitioning option for segments consumer by untitaker in #114992
Trace Waterfall
- Updates to useTraceMeta by nsdeschenes in #115179
- Add links to cross event from logs and metrics by nsdeschenes in #114852
Ui
- Add keywords for theme switching in Command Palette in #114970
- Replace MemberListStore with React Query in #114658
Other
- (ai-conversations) Emit Sentry event on empty conversation detail page by obostjancic in #115368
- (auth) Add SuspendedUserMiddleware safety net in #114771
- (billing) Use Intercom for ask Support links in #115527
- (checkout) Use Intercom for ask Support link by souredoutlook in #115218
- (ci) Retry getsentry-dispatch by joshuarli in #115309
- (data-export) Add Sentry trace metrics for export outcomes in #115575
- (endpoints) Add option to disable all project fetching in relay endpoints by tobias-wilfert in #114947
- (eslint) Enable @typescript-eslint/no-unnecessary-type-arguments by JoshuaKGoldberg in #113674
- (events) Add experimental api for events that allows sql by wmak in #115330
- (export) Update Storgae config for full trace export for Logs by manessaraj in #114065
- (external-issues) Use LLM generated title/description for ticket creation by leeandher in #114760
- (highlights) New loading state, stronger project types in #115352
- (insights) Show source frames for slow DB spans by scttcper in #115286
- (integrations) Include organization_id in response tracking logs by armenzg in #113903
- (issue-detection) Tier-based traces per invocation by roggenkemper in #114331
- (playstation) Add feature for uploading attachments to object store by tobias-wilfert in #114956
- (process-segments) Add span deduplication filtering by untitaker in #115283
- (projects) Load project stats with react query, remove ProjectsStatsStore in #115463
- (replays) Add replay dataset back to events by wmak in #114234
- (repositories) Filter out active repositories from the sync in #115034
- (scm) Allow fetching by org/repo-name in #114369
- (scraps) Markdown component by natemoo-re in #115025
- (search) Add userCount filter key to issue search autocomplete by isaacwang-sentry in #114823
- (search-query-builder) Add custom currency filter by nsdeschenes in #114713
- (seer-explorer) Add polling backoff for 5xx errors in #115538
- (seer-slack) Add slack link parsing and insert slack thread info by alexsohn1126 in #114442
- (slo) Add SLO instrumentation to Jira search endpoint in #114513
- (slot) Automatically bridge known contexts by natemoo-re in #114548
- (trace-meta) Add trace metrics by wmak in #115107
- (tracemetrics) Add Equation UI to Widget Builder in #115071
- (types) Split Project into ProjectSummary and DetailedProject by scttcper in #115024
- (typing) Add pre-commit hook to prevent new weaklist additions by armenzg in #114761
- (viewer-context) Add seer_rpc_in + org_seer_rpc_in chokepoints in #115577
- (webhooks) Add live-run flag to override circuit breaker dry-run by Christinarlong in #114820
- Extend performance profiles to V2 spans by loewenheim in #115203
- Allow interval on heatmap endpoint by wmak in #115010
- Add a random duration task for testing by evanh in #114858
Bug Fixes 🐛
Aci
- Require AlertRuleWorkflow IDs to be ints by kcons in #115245
- Add workflow ID to ActionInvocation by kcons in #114770
- Revalidate medium threshold when high threshold changes in #114923
- Update the query filters to show
monitor instead of detector by saponifi3d in #114800
Ai Conversations
- Fix page filter race condition on conversation detail page by obostjancic in #115366
- Handle Python repr format and structured system prompts in AI trace view by obostjancic in #115054
- Fix page filter isolation, project=-1, and datetime URL params by vgrozdanic in #114965
Api
- Replace % formatting with string concatenation in count_hits to resolve Semgrep warning by fix-it-felix-sentry in #114016
- Validate root-cause-analysis query params via serializer by oioki in #115297
- Validate more user-provided int ids by kcons in #115299
- Return forbidden for gated events endpoint in #115148
- Validate more user-provided integer ids by kcons in #114996
- Preserve string array span detail attributes in #114853
Attributes
- Remove duplicate string is_transaction in #115569
- Account for @ in attributes by nsdeschenes in #115055
Auth
- Conditionally show unlinked member warning based on SSO requirement in #115461
- Prefer session user over IdP email in SSO identity resolution by michelletran-sentry in #115079
Autofix
- Propagate previous step referrer in #115412
- Read automation settings from detailed project by scttcper in #115239
- Relax requirements for autofix section to be completed by Zylphrex in #115084
- Add loading state for starting root cause by Zylphrex in #114917
Cells
- Bump Organization replication_version to backfill mapping date_created by lynnagara in #115423
- Replicate Organization.date_added to mapping row in #115325
Charts
- Wire up
visualMap prop in BaseChart in #115101
- Hide overlapping time-series y-axis labels by JoshFerge in #114972
Codeowners
- Return owner names on sync in #115583
- Display
dateSynced instead of dateUpdated in CODEOWNERS table in #115136
- Add
date_synced field to track actual CODEOWNERS sync time by shashjar in #115115
Conversations
- Improve conversations table UX by obostjancic in #115364
- Quote conversation ID in explore query by obostjancic in #115271
Dashboards
- Clarify mobile vitals app starts in #115264
- Use span.op for MCP pre-built dashboard filters by gggritso in #115540
- Render unfurl chart with dual Y axes for multi-aggregate widgets by DominikB2014 in #115411
- Invalidate dashboards list and grid on delete in #115354
- Exempt details widgets from limit validation in #115170
- Preserve prebuilt globalFilter chips when cloning by DominikB2014 in #115081
- Close widget viewer modal when releases drawer opens by skaasten in #114768
- Default text widgets to 1 row tall by jameskeane in #114898
- Include threshold changes in revision diffs in #114607
- Match widgets by content fingerprint when IDs differ and titles are non-unique by skaasten in #114578
- Show current version when no revisions exist by skaasten in #114718
Explore
- Update PHP perf onboarding docs by nsdeschenes in #115367
- Fix flaky virtual streaming test assertions by ryan953 in #114928
- Add autoFocus to save query modal input by JonasBa in #114742
- Check object perms on post by klochek in #114318
Insights
- Span id link overflow by nikkikapadia in #115380
- Validate project access for starred segments in #115418
Integrations
- Preserve async select value in external issue modal after dynamic refetch in #115593
- Allow blank overview on sentry app form by priscilawebdev in #114946
- Validate integration_id in OrganizationIntegrationBaseEndpoint by kcons in #114821
Issue Detection
- Remove 200-char subtitle truncation for AI-detected issues by roggenkemper in #115556
- Remove test environments from eligibility by roggenkemper in #114983
Issues
- Render assigned user avatars from member list in #115619
- Resolve custom tag / column name collision in events tab & timeline chart in #115416
- Resolve custom tag / column name collision on issue details page by shashjar in #115096
- Migrate data conditions away from old group type categories by ceorourke in #114614
- Return 400 for invalid action on group integration details by mrduncan in #114657
- Scope get_shared_for_org to the slug-resolved organization by oioki in #114906
- Fix typo "withing" → "within" in status_change comment in #114911
Iswf
- Fixes typing issues in Sentry App tasks, post_process tasks by GabeVillalobos in #115012
- Ensure Jira installed webhook JWTs only use the HS256 algorithm by GabeVillalobos in #114738
Jest
- Make command palette tests deterministic by mocking debounce in #115316
- Mock Algolia search in command palette test to prevent timeout by sentry in #115314
Onboarding
- Mobile style tweaks for SCM onboarding by jaydgoss in #115426
- Center the SCM detection loading indicator in #115404
- Add logs to browser JS and SolidStart product selection in #115399
- Register Replay integration during onboarding flow by jaydgoss in #114774
Ourlogs
- Use
replaceMerge for time series visualization axes in #115551
- Stabilized column widths during scrolling by JoshuaKGoldberg in #115389
- Add actions menu to timestamps too by JoshuaKGoldberg in #115180
- Hide axis pointer label on collapsed spark line chart by JoshuaKGoldberg in #115276
- Add min-height of 20vh or 15rem to page main items by JoshuaKGoldberg in #115272
- Correct logs modal exports payload data by JoshuaKGoldberg in #114964
- Only show LogsAggregateTable top result colors on first cursor page by JoshuaKGoldberg in #114873
- Add minWidth to LogsInfiniteTable by JoshuaKGoldberg in #114864
- Only constrain page for Logs (samples) mode by JoshuaKGoldberg in #114725
Preprod
- Fix snapshot list scroll-to and duplicate React keys in #115396
- Clarify rerun analysis description in admin page by NicoHinderling in #115340
- Quote CSS mask-image URLs to handle special characters by NicoHinderling in #115318
- Improve snapshot status filter behavior by NicoHinderling in #115224
- Get snapshot PR comments from detailed project in #115173
- Get snapshot status checks from detailed project in #115139
- Add exponential retry for GitHub API calls in snapshot tasks in #114272
- Use display_name for snapshot sidebar labels in #114710
- Raise expiry_seconds on Objectstore upload token by lcian in #114844
- Ensure artifact belongs to accessible project by klochek in #114446
Profiling
- Specific API error copy for flamegraphs and thresholds by JoshuaKGoldberg in #114971
- Use granular transactionResult properties in useMemo deps for continuousFlamegraph too by JoshuaKGoldberg in #114855
- Use granular transactionResult properties in useMemo deps by JoshuaKGoldberg in #114757
Releases
- Prevent row-lock contention on last_seen bump by yuvmen in #115443
- Handle integration token states in releases promo by gggritso in #115254
Replay
- Use makeReplaysPathname for replay URLs and fix flaky tests by ryan953 in #115137
- Preserve player time when toggling sidebar chevron by JoshuaKGoldberg in #114987
Replays
- Use Spans dataset when fetching contents of "Trace" tab by gggritso in #115530
- Cap Mobile Replay
<video> element pool by gggritso in #115403
- Make sure the replay player doesn't reset on a background update by TkDodo in #115052
Repositories
- Fix serialization error during repo sync in #114880
- Convert repository sync api to be a control endpoint by wedamija in #114797
Search
- Prevent AI query feedback button from dismissing dropdown in Safari by isaacwang-sentry in #115219
- Fix userCount filter for issues-stats endpoint by isaacwang-sentry in #114877
Search Query Builder
- Allow wildcard ops for all string filters by nsdeschenes in #114959
- Only highlight on string attributes by nsdeschenes in #114948
Seer
- Prevent duplicate assisted-query submissions in #115566
- Record user initiator for manual explorer handoffs in #115558
- Preserve recommended sort order for unscored issues in night shift by trevor-e in #115444
- Normalize U+F00D wildcard operators in snapshot_to_markdown in #115397
- Iterate on the Add Project to Autofix form to make it work better in #115306
- Add sent_at timestamp to autofix PR analytics events by trevor-e in #115341
- Use IntoTip instead of QuestionTooltip in Core Review table by ryan953 in #115308
- Let
manage your repository connections open in a new tab by ryan953 in #115289
- Use hash-based jitter for night shift org dispatch by trevor-e in #115189
- Use self.get_projects() in OrganizationAutofixAutomationSettingsEndpoint by srest2021 in #114977
- Improvements in #114881
- Stop on-completion hook from re-pushing terminally errored repos in #114885
Settings
- Defer sentry app form mount until data loads by priscilawebdev in #115162
- Always fetch detailed project in route context in #115149
- Collapse unused fields in team projects requests by scttcper in #114886
Slack
- Skip explore unfurls for unsupported chart types in #115374
- Drop empty list filter values when unfurling dashboards by DominikB2014 in #115273
- Hash arg values when deduping unfurled links by DominikB2014 in #115200
- Use logsAggregateSortBys for explore logs unfurl chart sort by DominikB2014 in #114984
- Drop stale aggregateSortBys in metrics explore unfurl by DominikB2014 in #114982
- Clamp too-fine URL interval in explore unfurl to ladder minimum by DominikB2014 in #114985
- Categorize unrecognized Slack API error codes in #114804
- Render first visible metric chart in Explore unfurl by DominikB2014 in #114871
- Forward all yAxes when unfurling Explore metrics URLs by DominikB2014 in #114868
Snapshots
- Show 'Waiting for base' instead of 'Base' when base artifact not found in #115446
- Preserve scroll position when switching diff modes in list view by NicoHinderling in #115001
- Fix docs link by mtopo27 in #114857
Span Buffer
- Fix another process leak by untitaker in #115050
- Fix flusher processes leaking on timeout by untitaker in #114955
Spans
- Remove conditional cleanup to fix flush lock double-flush bug by untitaker in #114883
- Release flush lock in done_flush_segments in #115169
Tracemetrics
- Use stricter value for selector options by nsdeschenes in #115479
- Fix palette differences between table and viz by k-fish in #115282
Typing
- Remove snuba modules from the mypy weaklist by kcons in #115439
- Remove more of sentry.incidents from the weaklist by kcons in #115304
- Remove sentry.incidents.serializers from the mypy weaklist by kcons in #115232
Ui
- Allow tooltips inside hovercard in #115590
- Separate issues feed overlay groups in #115576
- Rank trace group by matches with fzf in #115032
- Table header icon size in #114913
Workflows
- Require int ids in AlertRuleDetectorValidator by kcons in #115510
- Don't report timeouts as errors in process_workflow_event or delayed_workflows by kcons in #115215
- Require action_filters to be a list of dicts by kcons in #114860
Other
- (agent-ui) Derive staleness from a direct check w/scheduled rerender by aliu39 in #115344
- (ai) Mirror AI conversation message parsers in #114707
- (alerts) Return 400 when trigger IDs don't belong to the alert rule being updated in #115573
- (Anomaly Detection) Verify the users project permissions in #114900
- (avatar) Add cached fallback to AsyncMemberAvatar by natemoo-re in #115554
- (backendJsonFormAdapter) Convert disabledReason to disabled string in #114847
- (checkboxState) Update useListItemCheckboxContext to not rely on ApiQueryKey directly, only QueryKeyEndpointOptions in #114997
- (ci-st) Don't print confusing 0 test count if all tests are selected by joshuarli in #115305
- (data-forwarding) Better permissions controls on editing page in #114966
- (digests) Don't filter by RuleSnooze by kcons in #115229
- (discover) Guard against undefined items in collectQueryStringByKey by sentry in #115469
- (eap) Normalize dashed UUIDs in search filters and resolve internal column names by BYK in #114550
- (eslint) Inline disable new violations in #114941
- (events) Invert PS/AMD logos in dark mode by priscilawebdev in #115369
- (feature-flags) Use sm text in tooltip date by priscilawebdev in #115159
- (feedback) Disallow OR/AND operators in feedback search by mrduncan in #115113
- (gsAdmin) Update admin portal contact channel and owner link by swartzrock in #114399
- (identity) Remove bogus email_verified from VSTS identity providers by michelletran-sentry in #114863
- (logs) Correct Date.now mock in virtual streaming test by sentry in #114793
- (migrations) Catch missing historical_silo_assignments on MOVE_TO_PENDING by wedamija in #115087
- (mypy) Remove stale weaklist entry for deleted test file by NicoHinderling in #115204
- (nightshift) Make the (temporary) alert be a system alert, no rounded corners in #114921
- (oauth) Prevent session overwrite attack in authorization flow by semgrep-code-getsentry in #113791
- (occ-eap) Prevent throw on None stack frame in #115395
- (ownership) Show specific error messages when ownership rule owners are invalid by shashjar in #114802
- (release-health) Add stable processing jitter by JoshFerge in #115507
- (repos) Fix virtualized repo list scroll container in non-nested mode in #114901
- (sdk-crash) Exclude React Native Supabase instrumentation from SDK crash detection by antonis in #115259
- (seer-explorer) Clear input when switching sessions or starting new chat in #115440
- (seer-slack) Change thinking status by alexsohn1126 in #115280
- (sentry-apps) Gate dashboard stats queries by priscilawebdev in #115056
- (sentryapps) Need GET to be exception cased to view the app status in _admin by Christinarlong in #114980
- (slack-unfurl) Preserve multiple groupBy entries on explore unfurl by DominikB2014 in #114862
- (snuba) Map ClickHouse 'Too many simultaneous queries' to 429 instead of 500 by BYK in #114551
- (superuser) Improve banner ux by priscilawebdev in #115168
- (test) Fix flaky filesChanged test by using regex matcher by ryan953 in #114975
- (tests) Fix missing control silo urls in test by wedamija in #114870
- (trace-details) Show replacement attributes when no deprecated source exists in #114943
- (trace-meta) Fix types for EAP Trace Meta by nsdeschenes in #115553
- (traces) Add null state to application metrics dropdown in #115617
- Allow reading multiple env secrets for Launchpad in #115632
- Wrap custom tags project_id and project.name by cobyeastwood183 in #115402
- Mypy-weaklist-stale-on-delete by joshuarli in #115213
- Be less strict when parsing apiUrls by TkDodo in #114978
- Disable billing platform exception logging by noahsmartin in #114872
Documentation 📚
- (spans) Update span buffer docs by lvthanh03 in #115483
- Document Application Metrics dataset in #115089
Internal Changes 🔧
Aci
- Update API docs landing page description by ceorourke in #115509
- Remove beta tag on API docs by ceorourke in #115284
- Use addErrorMessage for detector mutation errors by evanpurkhiser in #115205
- Update new monitor page copy in #115158
- Narrow latest group detector query by scttcper in #115027
- Move metric issues into generic post processing pipeline by ceorourke in #114786
Agents
- Clarify frontend typecheck command in #115421
- Better instructions for using apiOptions by TkDodo in #114949
Alerts
- Remove metric alert constraint on NotificationMessage by ceorourke in #115529
- Move spike protection API docs to their own section by ceorourke in #115521
- Drop IncidentTrigger model by ceorourke in #115502
- Remove IncidentTrigger model by ceorourke in #115492
- Remove a couple more usages of IncidentTrigger by ceorourke in #115458
- Delete triggered_incidents from AlertRuleTrigger by ceorourke in #115454
- Remove triggered_for_incident from tests in #115451
- Remove triggered_incidents from AlertRuleTrigger in #115449
- Remove usage of IncidentTrigger in #115436
- Drop RuleFireHistory table in #115401
- Remove RuleFireHistory in #115328
- Remove metric alerts dual processing log flag by ceorourke in #115342
- Remove issue alert columns from NotificationMessage by ceorourke in #115290
- Remove unused incident endpoint code by ceorourke in #115250
- Remove dead alerts code by ceorourke in #115301
- Remove unused incidents code by ceorourke in #115236
- Drop SystemAlerts from the init queue component map by evanpurkhiser in #115223
- Remove issue alert constraints on NotificationMessage by ceorourke in #115150
- Remove dead standalone SystemAlerts mount by evanpurkhiser in #115222
- Unpublish legacy rule endpoints by ceorourke in #115154
- Adopt useModal in issue rule actions in #115119
- Remove should_fire_workflow_actions in #115083
- Drop NeglectedRule table by ceorourke in #114976
- Remove NeglectedRule model by ceorourke in #114927
Autofix
- Style artifact preview by Zylphrex in #115478
- Add more prompt metadata to autofix in #115408
- Adopt useModal in autofix views by evanpurkhiser in #115126
- Replace derived state with useMemo in autofixProgressBar in #115146
Billing
- Bumped protos to 0.10.0 in #115609
- Bumped protos version to 0.8.32 in #115419
- Adopt useModal in billing views by evanpurkhiser in #115129
- Add better extras to logs by brendanhsentry in #115209
- Update metrics sample rate by brendanhsentry in #115106
- Update plan features copy and remove Developer plan changes link by souredoutlook in #114824
Cells
- Remove cell restriction code for Jira and integrations by lynnagara in #115508
- Rename SENTRY_OUTBOX_MODELS key from REGION to CELL by lynnagara in #115210
- Assert control org listing matches cell response in #114919
- Remove dead OrganizationRegionEndpoint in #114791
Ci
- Skip importing irrelevant test files during pytest collection in #114107
- Route postgres through Unix domain socket in CI in #114108
- Re-apply parallel devservices startup for backend tests by mchen-sentry in #114104
Codeowners
- Clean up in #115237
- Improve logging & testing for
update_code_owners_schema task by shashjar in #115348
- Improve logging & testing for
code_owners_auto_sync task by shashjar in #115347
Cross Events
- Remove flag registration in #115267
- Clean up feature flag by nsdeschenes in #115263
- Temp disable traces tab and add new checks by nsdeschenes in #114854
Dashboards
- Replace derived state in editAccessSelector in #115155
- Use VisualizationWidget for all dataset types in #114622
- Adopt useModal in dashboard revisions in #115122
- Lower default async queue parallel limit to 15 by DominikB2014 in #115076
- Drop DashboardLastVisited table by wedamija in #114930
- Remove DashboardLastVisited model by wedamija in #114929
- Remove top_n and stacked_area display type handling by DominikB2014 in #114903
- Improve number formatting documentation in #112410
Deps
- Bump taskbroker-client and relax bump_version lint by untitaker in #115281
- Bump urllib3 from 2.6.3 to 2.7.0 by dependabot in #115298
- Bump lxml from 5.3.0 to 6.1.0 by dependabot in #115060
- Bump mistune from 2.0.4 to 3.2.1 by dependabot in #115260
- Bump django from 5.2.12 to 5.2.14 by dependabot in #115261
- Bump cryptography from 46.0.5 to 46.0.7 by dependabot in #115061
- Bump requests from 2.32.4 to 2.33.0 by dependabot in #115062
- Bump pillow from 12.1.1 to 12.2.0 by dependabot in #115059
- Update mypy to 1.20.2 by JoshFerge in #114969
Deps Dev
- Bump pytest from 8.1.2 to 9.0.3 by dependabot in #115057
- Bump terser from 5.40.0 to 5.46.2 by dependabot in #114826
Explore
- Migrate context.tsx to nuqs by ryan953 in #115435
- Migrate replayQueryParamsProvider to nuqs by ryan953 in #115422
- Inline and remove getIdFromLocation helper by ryan953 in #115442
- Deprecate getQueryFromLocation by ryan953 in #115427
- Move updateNullableLocation to utils/url/ in #115415
- Remove flags for overlay charts by nsdeschenes in #115266
- Adopt useModal in explore views by evanpurkhiser in #115123
- Extract and re-use search sorting logic by nsdeschenes in #115194
Feedback
- Adopt useModal in feedback item by evanpurkhiser in #115124
- Replace derived state in useFeedbackHasNewItems in #115151
Flags
- Remove organizations:alerts-timeseries-comparison registration by wedamija in #113375
- Remove organizations:symbol-sources gates (backend) by wedamija in #114993
- Remove organizations:performance-transaction-summary-eap registration by wedamija in #115015
- Remove organizations:performance-transaction-summary-eap gates (frontend) by wedamija in #115014
- Remove organizations:integrations-cursor registration by wedamija in #115017
- Remove organizations:insights-prebuilt-dashboards by gggritso in #114960
- Remove organizations:integrations-cursor gates (frontend) by wedamija in #115016
- Remove organizations:symbol-sources gates (frontend) by wedamija in #114991
- Move 2 should-be-permanent flags to permanent.py by wedamija in #114934
- Remove organizations:new-organization-member-invite by wedamija in #114812
- Remove organizations:integrations-deployment by wedamija in #114990
- Remove organizations:on-demand-gen-metrics-deprecation-query-prefill by wedamija in #114810
- Remove organizations:app-store-connect-multiple by wedamija in #114935
- Remove organizations:dashboards-starred-reordering (backend) in #114817
- Remove organizations:continuous-profiling-beta-ui (registration) in #114816
- Remove organizations:dashboards-starred-reordering (frontend) in #114818
- Remove organizations:continuous-profiling-beta-ui (frontend) in #114815
- Make organizations:workflow-engine-log-evaluations permanent in #114803
- Remove organizations:uptime-auto-detected-monitor-emails in #114806
- Remove organizations:normalize_segment_names_in_span_enrichment by wedamija in #114809
- Remove organizations:on-demand-gen-metrics-deprecation-prefill by wedamija in #114811
- Remove organizations:on-demand-metrics-query-spec-version-two by wedamija in [#114808
Changelog truncated for issue body.
Requested by: @chadwhitacre
Merge target: (default)
Quick links:
Assign the accepted label to this issue to approve the release.
Targets
Checked targets will be skipped (either already published or user-requested skip). Uncheck to retry a target.
📋 Changelog
New Features ✨
Aci
Agent Ui
Autofix
Cells
Cmdk
Codeowners
Dashboards
app.vitals.*support to mobile vitals dashboards by buenaflor in #113046Dynamic Sampling
Explore
field[*]:value) by manessaraj in #115070Forms
Heatmap
Issues
Iswf
Logs
Onboarding
Otlp
Ourlogs
Preprod
Repos
Seer
seer-gitlab-supportin the/seer/onboarding-check/endpoint by ryan953 in #113851seer-gitlab-supportto billing/subscription screens by ryan953 in #113855seer-gitlab-supportto the seer config reminder by ryan953 in #113852Sentry Apps
Settings
Slack
Snapshots
Spans
Trace Waterfall
Ui
Other
Bug Fixes 🐛
Aci
monitorinstead ofdetectorby saponifi3d in #114800Ai Conversations
Api
Attributes
Auth
Autofix
Cells
Charts
visualMapprop in BaseChart in #115101Codeowners
dateSyncedinstead ofdateUpdatedin CODEOWNERS table in #115136date_syncedfield to track actual CODEOWNERS sync time by shashjar in #115115Conversations
Dashboards
Explore
Insights
Integrations
Issue Detection
Issues
Iswf
Jest
Onboarding
Ourlogs
replaceMergefor time series visualization axes in #115551Preprod
Profiling
Releases
Replay
Replays
<video>element pool by gggritso in #115403Repositories
Search
Search Query Builder
Seer
manage your repository connectionsopen in a new tab by ryan953 in #115289Settings
Slack
Snapshots
Span Buffer
Spans
Tracemetrics
Typing
Ui
Workflows
Other
Documentation 📚
Internal Changes 🔧
Aci
Agents
Alerts
Autofix
Billing
Cells
Ci
Codeowners
update_code_owners_schematask by shashjar in #115348code_owners_auto_synctask by shashjar in #115347Cross Events
Dashboards
Deps
Deps Dev
Explore
Feedback
Flags
Changelog truncated for issue body.