What's New

26.4.0

2026-04-15T18:56:16Z

New Features ✨

Aci

Admin

Agents

Ai Insights

Ai Issues

Alerts

  • Add per-method workflow engine flags for project alert rule endpoints by @kcons in #112827
  • Set up prune_old_open_period_activity by @kcons in #112243
  • Report in Sentry and headers whether legacy models were used by @kcons in #110954
  • Add pure Detector/Workflow version of OrganizationCombinedRuleIndexEndpoint by @kcons in #110700

Api

Assisted Query

Attachments

Autofix

Aws Lambda

Billing

Bitbucket

Cells

Chartcuterie

Ci

Cmd K

  • Add 'superuser' keyword to admin actions by @JonasBa in #112298
  • Add comprehensive analytics for the new command palette by @jshchnz in #111684
  • Add Amplitude analytics instrumentation to command palette by @JonasBa in #111553

Cmdk

Code Mappings

  • Handle Java monorepo source roots in auto-derivation task by @romtsn in #112655
  • Allow multiple source roots per stack root by @romtsn in #111704

Codecov

Codeowners

Coding Integrations

Context Engine

Conversations

Dashboards

Data Export

Errors

Eslint

Experiments

Explore

Flagpole

Github

Gitlab

Grouping

Hybridcloud

Insights

Integrations

Intercom

  • Separate chat per org by @sentaur-athena in #112551
  • Closing intercom session on org change by @sentaur-athena in #112549

Issue Details

  • Add android native tombstones onboarding banner by @romtsn in #112478
  • Add analytics for similar and merged issues drawers by @cvxluo in #112618
  • Show supergroup in issue details sidebar by @scttcper in #112543

Issues

  • Use new stack trace in stack trace preview by @scttcper in #111592
  • Deduplicate replay-count API requests in issue stream by @scttcper in #112323
  • Refactor SuspectCommits layout, clean up types by @scttcper in #111818
  • Prefetch supergroup data and add stats columns to rows by @scttcper in #111719
  • Simplify shared issue event rendering by @scttcper in #111769
  • Recent issues with autofix view by @Zylphrex in #111617
  • New stack trace component by @scttcper in #109428

Logs

Metrics

Monitors

  • Add onboarding modal for the new alerts/monitors pages by @malwilley in #112694
  • Add info hint for diff-based issue detection by @mtopo27 in #111698

Nav

Notifications

  • Hook into the platform in the slack send_alert step for metric laerts by @Christinarlong in #112189
  • Add notification data and renderer for metric alerts by @Christinarlong in #111674
  • Add threading to notification service by @Christinarlong in #110951

Np

  • Adds Discord metric alert renderer by @GabeVillalobos in #112420
  • Adds Discord issue renderer, updates Slack renderer tagging extraction by @GabeVillalobos in #112079
  • Adds rough notification renderer for issue alerts, as a thin wrapper by @GabeVillalobos in #110929
  • Adds notification platform skill for creation of new notifications, providers, and renderers by @GabeVillalobos in #109754

Occurrences On Eap

Onboarding

  • Pre-populate repo selector with full repo list by @jaydgoss in #112685
  • Add onboarding docs for Vercel AI ToolLoopAgent by @constantinius in #112333
  • Gate SCM onboarding flow with useExperiment hook by @jaydgoss in #112206
  • Add animated Sentry logo to SCM onboarding steps by @jaydgoss in #112386
  • Add Litestar as a Python onboarding platform (FE) by @sentrivana in #111607
  • Added Metrics to Unity by @bitsandfoxes in #108118
  • Add Litestar as a Python onboarding platform (BE) by @sentrivana in #111522
  • SCM project details step UI polish and analytics by @jaydgoss in #111623
  • SCM platform features step UI polish and analytics by @jaydgoss in #111529
  • Add logs onboarding for Elixir by @sl0thentr0py in #110038
  • SCM connect step UI polish and analytics by @jaydgoss in #111478
  • Sync feature selections from context to SetupDocs URL params by @jaydgoss in #111334
  • Implement SCM project details step by @jaydgoss in #111306
  • Implement SCM platform & features step by @jaydgoss in #111160
  • Implement SCM_CONNECT step with provider connection and repo selection by @jaydgoss in #110883

Pipeline

Preprod

  • Add artifact_type field to Explore UI (EME-874) by @cameroncooke in #113034
  • Add settings link to snapshot PR comments by @runningcode in #112909
  • Store metrics artifact type as string in EAP [backend] (EME-874) by @cameroncooke in #112905
  • Auto-filter installable:true when switching to Distribution view by @mtopo27 in #112533
  • Add snapshot PR comments toggle to project settings by @runningcode in #112362
  • Include authToken in ProjectPreprodUploadOptions by @lcian in #112466
  • Add snapshot PR comment templates by @runningcode in #112353
  • Check for actual build data when showing mobile builds tab by @NicoHinderling in #112525
  • Sort insight diff by total potential savings by @mtopo27 in #112476
  • Add snapshot details to admin info endpoint by @NicoHinderling in #112482
  • Upgrade admin panel's "rerun analysis" action to support batch (up to 100) by @NicoHinderling in #112481
  • Add snapshot auto-approval for repeated PR builds by @NicoHinderling in #112421
  • Add settings link to build distribution PR comments by @runningcode in #112366
  • Add installable attribute to EAP alias mappings by @mtopo27 in #112363
  • Split Mobile Builds settings into tabbed interface by @mtopo27 in #112151
  • Register feature flag and project option for snapshot PR comments by @runningcode in #112100
  • Add snapshot approval UI in header by @NicoHinderling in #111977
  • Add approval API endpoint and approval info in snapshot response by @NicoHinderling in #111976
  • Filter settings page builds by display type by @NicoHinderling in #112046
  • Create NEEDS_APPROVAL records in status check tasks by @NicoHinderling in #111975
  • Delete snapshot objectstore data on artifact deletion by @NicoHinderling in #111972
  • Add app identifier to size analysis alert notifications by @mtopo27 in #111994
  • Add triggered condition section for size analysis issues by @mtopo27 in #111978
  • Add value, conditions, and config to size analysis evidence_data by @mtopo27 in #111923
  • Add shadow taskbroker dispatch for launchpad integration by @NicoHinderling in #110602
  • Use sequential (n-1) comparisons for size analysis diff monitors by @mtopo27 in #111482
  • Improve Slack alert messages for size analysis monitors by @mtopo27 in #111660
  • Add preprod_artifact webhooks to frontend settings UI by @cameroncooke in #111475
  • Add build_distribution.completed webhook for Sentry Apps by @cameroncooke in #111474
  • Add Insight Diff section to issue detail by @mtopo27 in #111357
  • Add size_analysis.completed webhook for Sentry Apps by @cameroncooke in #111473
  • Register preprod_artifact webhook resource and event types by @cameroncooke in #111472
  • Show detector section in sidebar for size analysis issues by @mtopo27 in #111583
  • Add auto-expansion of a section on arrow key navigation by @rbro112 in #111536
  • Link artifact ID tags to build detail page by @mtopo27 in #111383
  • Support absolute detectors from single-build path by @chromy in #111141
  • Show processing state for snapshot comparisons by @NicoHinderling in #111355
  • Show original filename tooltip on renamed snapshots by @NicoHinderling in #111325
  • Add solo/diff toggle button to snapshot dev tools by @NicoHinderling in #111318
  • Add group support to snapshots frontend by @rbro112 in #110942
  • Reduce snapshots retention to 30 days by @lcian in #110988
  • Add Datadog metrics for snapshot upload and diff lifecycle by @NicoHinderling in #111024
  • Add group_id to all autofix.* events by @chromy in #110943
  • Add git metadata and artifact IDs as tags for size analysis issues by @mtopo27 in #110854

Profiling

  • New stack trace in span profile details by @scttcper in #112559
  • Use spans data source for profiles search bar in EAP mode by @mjq in #111772

Repos

Scm

  • Add get_git_commit and get_tree for GitLab by @billyvg in #111363
  • Allow GitLab repos to be selected for Seer by @billyvg in #111446
  • Show repos from other/unknown providers in the treeview component by @ryan953 in #111280
  • Move static facade to module level and dynamically construct the SCM type from the provider's capabilities by @cmanallen in #111113
  • Add get_archive_link to SCM API by @billyvg in #110987

Scraps

Search

  • Add experimental "recommended" issue sort by @mrduncan in #111043
  • Switch filter operator from contains to is on dropdown selection by @nsdeschenes in #111668

Seer

  • Replace LLM triage with Explorer agent in night shift by @trevor-e in #112984
  • Add Sentry metrics to night shift pipeline by @trevor-e in #112967
  • Add ViewerContext authentication for Seer callbacks by @azulus in #112844
  • Add seer-run-id-in-slack feature flag by @alexsohn1126 in #112918
  • Add run ID to Seer Explorer Slack footer by @alexsohn1126 in #112835
  • Add Seer admin page with night shift trigger by @trevor-e in #112822
  • Re-land night shift run record writes during triage by @trevor-e in #112769
  • Re-land night shift run tracking models with db_constraint=False by @trevor-e in #112768
  • Add lightweight supergroups backfill task by @yuvmen in #112507
  • Read Seer project preferences from Sentry DB in Sentry endpoints by @srest2021 in #111594
  • Thread short-lived API token to Explorer MCP tools by @azulus in #112179
  • Add dual-read helpers for Seer project preferences from Sentry DB by @srest2021 in #111591
  • Distinguish legacy vs explorer autofix in agent_handoff initiator by @JoshFerge in #112575
  • Add candidate issue selection to night shift by @trevor-e in #112521
  • Record agent_handoff analytics in launch_coding_agents_for_run by @JoshFerge in #112516
  • Add rca_source to supergroup queries with feature flag gating by @yuvmen in #112436
  • Show the Seer settings link even when hideAiFeatures is enabled by @ryan953 in #112510
  • Add coding_agent field to agent handoff analytics by @JoshFerge in #112491
  • Add Night Shift nightly autofix cron scaffolding by @trevor-e in #112429
  • Add lightweight RCA clustering endpoint integration by @yuvmen in #112229
  • Enable sorting seer autofix project list by @ryan953 in #112250
  • Add widget-level LLM context to dashboard widgets by @Mihir-Mavalankar in #112267
  • Setup Agent bulk-edit on the Seer Autofix list page, and bring back Create PR bulk edits by @ryan953 in #112249
  • Add the stopping-point field to project-specific seer settings by @ryan953 in #112232
  • Wrap the seat-based wizard in a feature flag by @ryan953 in #112212
  • Add preamble to structured page context markdown by @Mihir-Mavalankar in #112235
  • Fall back to contextvar ViewerContext for Seer requests by @gricha in #112221
  • Implement the dropdown to save defaultAutomatedRunStoppingPoint by @ryan953 in #112211
  • Send structured LLMContext JSON as on_page_context by @Mihir-Mavalankar in #112200
  • Improve the loading state of the Seer SCM overview area by @ryan953 in #112054
  • Convert structured LLMContext JSON to markdown for on_page_context by @Mihir-Mavalankar in #112181
  • Add feature flag and register Dashboard in LLM context tree by @Mihir-Mavalankar in #111973
  • Send page_name in explorer chat requests from frontend by @Mihir-Mavalankar in #112124
  • Send page_name in explorer chat requests by @Mihir-Mavalankar in #112065
  • Add issue summary experimental flag by @JoshFerge in #112115
  • Add structured LLM context system for Seer Explorer by @Mihir-Mavalankar in #111554
  • Add org-level default stopping point and wire coding agent defaults into project creation by @srest2021 in #111697
  • Seer Autofix Settings Overview page by @ryan953 in #110758
  • Update default triggers for Code Review by @ryan953 in #111911
  • Add RPC interface for retrieving the installation_id by @cmanallen in #111893
  • Update Seer Settings to let people pick their preferred default agent for Autofix by @ryan953 in #111366
  • Add trigger_explorer method to SeerOperator by @alexsohn1126 in #109675
  • Seer Code Review Overview section by @ryan953 in #111593
  • Seer SCM Overview by @ryan953 in #111343
  • Rename SCM seer settings tab to Repositories by @ryan953 in #111538
  • Add dual-write for Seer project preferences to ProjectOptions and SeerProjectRepository by @srest2021 in #110704
  • Add feature-flags to control seer onboarding pages by @ryan953 in #111277
  • Iterate on the Seer Trial page styles by @ryan953 in #111275
  • Add SeerExplorerResponse notification data and Slack renderer by @alexsohn1126 in #109317
  • Add SeerOperatorExplorerCache for completion hook payloads by @alexsohn1126 in #109238
  • Show Upgrade Banner when on Legacy/Beta Seer by @ajay-sentry in #111056
  • Add Explorer methods to SeerEntrypoint protocol by @alexsohn1126 in #109231
  • Use Seer model_used response field for seer_model on GroupHashMetadata by @yuvmen in #111047
  • Expose defaultCodingAgent and defaultCodingAgentIntegrationId org fields by @ryan953 in #111051
  • Schedule context engine indexing hourly with load spreading by @Mihir-Mavalankar in #110886
  • Add a message to seer settings when Gen AI Features are disabled by @ryan953 in #110947
  • Add logging to lightweight RCA trigger flow by @yuvmen in #110930
  • Add links to provider integration pages from scm treeview by @ryan953 in #110890

Settings

  • Move Repositories sidebar link into the new Integrations section by @ryan953 in #112718
  • Add Integrations nav section with MCP & CLI page by @dcramer in #111419

Slack

  • Support unfurling Explore Metrics URLs in Slack by @DominikB2014 in #112706
  • Add Slack Agent DM and assistant thread support for Seer Explorer by @leeandher in #112493
  • Support unfurling Explore Logs URLs in Slack by @DominikB2014 in #112677
  • Pass display type from Explore URL to chartcuterie by @DominikB2014 in #112620
  • Pass timeseries data directly to chartcuterie for Explore unfurls by @DominikB2014 in #112585
  • Unfurl Explore Traces URLs with chart previews by @DominikB2014 in #112020
  • Add frontend pipeline step for Slack integration setup by @evanpurkhiser in #112417
  • Add tags to Slack event endpoint for observability by @DominikB2014 in #112023
  • Implement process_mention_for_slack task for Explorer by @alexsohn1126 in #109733
  • Add Explorer support to SlackEntrypoint by @alexsohn1126 in #109569
  • Add SlackMentionHandler for parsing @mentions by @alexsohn1126 in #109384
  • Handle app_mention events for Seer Explorer by @alexsohn1126 in #109335
  • Add staging app install button to Slack integration page by @alexsohn1126 in #110787
  • Add slack api methods for thread history and reactions by @leeandher in #107785
  • Add slack-staging-app feature flag and options by @alexsohn1126 in #110766

Snapshots

Snuba

  • Add a metric in query_trace_data to see what spans report span.status "ok" but have an associated error by @constantinius in #112090
  • Add metric for Snuba RPC read timeout errors by @kylemumma in #111215

Source Map Config Issues

  • Filtering out config issues from default issues stream by @Abdkhan14 in #113031
  • Adding stats to group row ui by @Abdkhan14 in #113048
  • Updating title and subtitle by @Abdkhan14 in #112952
  • Adding copy markdown button to troubl… by @Abdkhan14 in #112943
  • Making source map doc links platform … by @Abdkhan14 in #112828
  • Adding Sentry Configuration nav item under issues by @Abdkhan14 in #112811
  • Implementing Impact section in issue details by @Abdkhan14 in #112782
  • Implementing problem, diagnosis and troubleshooting section designs by @Abdkhan14 in #112393
  • Logging extra data on occurrence trigger for UI validation by @Abdkhan14 in #112091

Source Map Issues

  • Supporting count_unique aggregation on eap processing errors by @Abdkhan14 in #112385
  • Adding group id and title as attr to processing error trace item by @Abdkhan14 in #112387

Spans

Stacktrace

  • Wire SCM source context into new stack trace by @scttcper in #111770
  • Add frontend hook and UI for on-demand SCM source context by @mujacica in #110327

Supergroups

  • Supergroup -> issue group by @cvxluo in #112990
  • Use issues search to highlight supergroup drawer issues by @scttcper in #112640
  • Add checkbox to supergroup rows for bulk selection by @scttcper in #112301
  • Filter supergroups to unresolved issues by @scttcper in #112383
  • Show filtered vs total events in supergroup chart by @scttcper in #112215
  • Add status filter to supergroups by-group endpoint by @scttcper in #112216
  • Smarter group loading and match highlighting by @scttcper in #111927
  • Add feedback component and experimental badge to drawer by @scttcper in #111859
  • Add group id to supergroup lookup endpoint by @cvxluo in #111265

Support

  • Add Intercom support widget frontend integration by @sentaur-athena in #108409
  • Add Intercom backend for identity verification by @sentaur-athena in #108408

Taskworker

  • Add ViewerContext propagation via context hooks by @gricha in #112217
  • Update Taskbroker / Taskworker Client to Support Push Mode by @george-sentry in #112629

Text

Tracemetrics

  • Add group by selector to equations by @narsaynorath in #113051
  • Enable aggregate panel to show equation result by @narsaynorath in #112966
  • Do not allow deletion of metrics used in equations by @narsaynorath in #112893
  • Disable the samples panel for equations by @narsaynorath in #112959
  • Use reference map to render equations by @narsaynorath in #112817
  • Add column sorting to samples table by @nsdeschenes in #112577
  • Allocate stable labels for metric queries by @narsaynorath in #112675
  • Add skeleton for equation builder in Explore by @narsaynorath in #112504
  • Bypass metric field validation for equations by @narsaynorath in #112479
  • Refresh the metrics refresh by @nsdeschenes in #111920
  • Add new and reorder columns by @nsdeschenes in #112027
  • Add feature flag for equations in metrics explorer by @narsaynorath in #112025
  • Update ArithmeticBuilder to allow for REFERENCE tokens by @narsaynorath in #111956
  • Display metric name in aggregates table when no group by selected by @nsdeschenes in #111513
  • Add trace metric bytes DataCategory to stats page by @k-fish in #111431
  • Show approximation for tracemetrics total count by @narsaynorath in #111356
  • Add unreal, unity to supported platforms by @narsaynorath in #111361
  • Add referrer for raw count normal extrapolated request by @narsaynorath in #111335
  • Show all attributes in group by for multi metrics by @narsaynorath in #111012
  • Add tracemetrics to dashboard global filters by @k-fish in #110781

Ui

  • Migrate jest from babel-jest to @swc/jest by @scttcper in #112895
  • Port eslint-plugin-sentry to this repo by @scttcper in #112081

Viewer Context

  • Restore ViewerContext from JWT in middleware by @gricha in #112875
  • Add JWT encode/decode for ViewerContext propagation by @gricha in #112765

Workflow

  • Add index on GroupOpenPeriodActivity.date_added by @kcons in #111968
  • Make OrganizationIncidentDetailsEndpoint.get support single-written workflows by @kcons in #111588
  • Add flag to enable workflow engine version of ProjectRulesEndpoint.get by @kcons in #111230

Workflow Engine

Workflows

  • Start using the action filters cache by @klochek in #111817
  • Make thresholds in prune_old_fire_history options by @kcons in #111575
  • Add periodic WorkflowFireHistory backlog clean-up task by @kcons in #111458
  • Add flag to enable workflow engine version of ProjectRuleDetailsEndpoint.get by @kcons in #111330
  • Add index on WorkflowFireHistory.date_added by @kcons in #111026
  • Add doc to clarify the current implementation strategy of the API backport project by @kcons in #111006

Other

  • (ai-detected-issues) Add new AI detected issue group types by @roggenkemper in #112848
  • (ai-monitoring) Fetch model context size and rename task to fetch_ai_model_info by @constantinius in #112656
  • (auto-save) Restore focus to field after auto-save completes by @TkDodo in #110834
  • (claude) Default workspace_name to 'default' by @sehr-m in #110950
  • (claude integration) Return full text block alongside URL by @sehr-m in #110953
  • (command-palette) Add feedback button and preload image in empty state by @JonasBa in #111555
  • (core-ui) Add ClearButton to CompositeSelect by @nsdeschenes in #111706
  • (dashboard) Adds warning messages on generated dashboard errors when caught in the frontend by @edwardgou-sentry in #111531
  • (data-forwarding) Migrate setup form to useScrapsForm by @JonasBa in #108805
  • (debug-files) Show console symbol sources for orgs with console access by @JoshuaMoelans in #109781
  • (deletions) Add CLI command to list and run scheduled deletions by @leeandher in #112018
  • (dynamic-grouping) Show supergroup membership on issues stream by @scttcper in #111249
  • (eventstore) Implement get_event_by_id as EAP query by @shashjar in #110925
  • (explorer) Add relevant repos to explorer by @sehr-m in #111046
  • (feature-showcase) Redesign and rewrite FeatureTourModal as FeatureShowcase by @malwilley in #112532
  • (features) Add data browsing widget unfurl feature flag by @DominikB2014 in #111897
  • (feedback) Redirect to the feedback details page when given a projectName & eventId by @ryan953 in #111931
  • (github-enterprise) Route installation_repositories to control silo by @wedamija in #112245
  • (identity) Add OAuth2ApiStep for API-driven OAuth2 flows by @evanpurkhiser in #111578
  • (incidents) Add is_metric_subscription_allowed; use it by @kcons in #112241
  • (issue-detection) Register ai-issue-detection feature flag by @roggenkemper in #113062
  • (issueList) Add group_ids to issues.viewed by @mrduncan in #111551
  • (llm-detection) Accept additional_attributes param in get_trace_waterfall by @nora-shap in #112239
  • (llm-detector) Add beta badge for AI detected issues by @roggenkemper in #112686
  • (metrcis) Add formula -if combinators by @wmak in #112016
  • (metric-issues) Use placeholder loaders for attribute comparison… by @malwilley in #111676
  • (middleware) Enable viewer context middleware by default by @gricha in #112293
  • (native) Log symbolicator response on empty thread list by @jjbayer in #110976
  • (notificaitons) Add threading to platform providers by @Christinarlong in #109248
  • (notification) Simplify renderer and data to be already processed text by @Christinarlong in #112182
  • (oauth) Show public app device flow URLs by @dcramer in #111655
  • (objectstore) Enable token generator in objectstore client by @matt-codecov in #105707
  • (pageframe) Adopt TopBar.Slot in Layout.Title by @natemoo-re in #112515
  • (perforce) Implement get_file() for source context by @mujacica in #111768
  • (performance) Add search support to EAP txn summary sample events by @mjq in #111349
  • (project) Increase securityTokenHeader max_length from 20 to 64 by @sentry-junior in #112483
  • (prompts) Register android tombstones onboarding prompt by @romtsn in #112477
  • (refactor) Move common exceptions out of the discover db by @manessaraj in #111713
  • (releases) Cache calls to compare-commits by @armenzg in #112494
  • (replay) Add a button to toggle the replay-details layout between the default & video-only by @ryan953 in #111944
  • (replays) Make bulk delete API endpoints public by @billyvg in #111679
  • (searchbar) Sort value suggestions by fuzzy match relevance by @scttcper in #111037
  • (seer agent) Add integration button to handoff dropdown by @sehr-m in #111499
  • (seer-slack) Check channel type for correct history scope before API call by @alexsohn1126 in #112371
  • (sentry apps) Add circuit breaker into webhook code by @Christinarlong in #111723
  • (spans-migration) Add a flag bypass for self hosted migrations by @nikkikapadia in #111150
  • (symbolicator) Pass objectstore token to symbolicator by @matt-codecov in #112058
  • (test) Add it.isKnownFlake for opt-in stress-testing flaky Jest fixes by @JoshuaKGoldberg in #111860
  • (timeseries) Add 6h interval by @wmak in #112678
  • (trace) Make trace ID clickable in span attributes table by @matejminar in #111395
  • (uptime) Move suggest assertions button to verification section by @jaydgoss in #109106
  • (usageStats) Add new no_parent_span client discard reason by @Lms24 in #112937
  • (utils) Add ContextPropagatingThreadPoolExecutor and S016 lint rule by @gricha in #111451
  • (wmak) Use non strings in group by by @wmak in #111753
  • Add referrer tag to snuba timeout metric by @kylemumma in #112826
  • Add repo indexing job by @shruthilayaj in #112136
  • Add ViewerContext middleware for API requests by @gricha in #112172
  • Add ViewerContext dataclass and contextvar module by @gricha in #112156
  • Add EAP double read for release health data by @noahsmartin in #111229
  • Let SCM platform support self-hosted GitLab by @jacquev6 in #111061
  • Remove Legacy Seer toggle BE code and update preflight checks by @ajay-sentry in #111049
  • Add seer-gitlab-support feature flag by @billyvg in #110659

Bug Fixes 🐛

Aci

Agents

Ai Conversations

Ai Insights

Alerts

  • Fallback to transactions dataset for performance alerts by @nikkikapadia in #112802
  • Fix trigger ordering in workflow-based AlertRule serializer by @kcons in #112727
  • Make ProjectRuleStatsIndexEndpoint 400 on a bad date range by @kcons in #112505
  • Better messaging for missing snoozeCreatedBy by @kcons in #112506
  • Reject EAP alerts with invalid time windows by @kcons in #112322
  • Incorporate EventsAnalyticsPlatform into our downgrade checking by @kcons in #112061
  • Fix alert link unfurling URL by @malwilley in #111033

Apigateway

Attachments

Auth

Autofix

  • Filter out autofix code mappings with bad repos (inactive, no integration, etc.) by @srest2021 in #112825
  • Remove autofixEnabled check from project setup guard by @chromy in #112792
  • Check preference repositories instead of tuning for Seer autofix onboarding check by @srest2021 in #112726
  • Show Add Integration CTA when no coding agents installed by @JoshFerge in #112625
  • Dual-delete Seer preferences for disabled repositories by @srest2021 in #112503
  • Validate Seer-supported SCM providers for Seer project preferences by @srest2021 in #112518
  • On repo hide, delete corresponding SeerProjectRepository rows by @srest2021 in #112266
  • Only write handoff.auto_create_pr ProjectOption if not default by @srest2021 in #112208
  • Handle NoneType project preferences from Seer API by @sentry in #112009
  • Restarting root cause from error should use new run by @Zylphrex in #111995
  • Github webhook analytics for explorer autofix by @Zylphrex in #111913
  • Remove broken docs link from GitHub Copilot CTA by @JoshFerge in #111298
  • Better loading states for agent handoffs by @Zylphrex in #111107

Billing

  • Updated name to application metrics and fixed tests(BIL-2235) by @krithikravi in #113002
  • Subscription UI misalignment by @brendanhsentry in #112485
  • Fix flaky paymentForm test by awaiting button enabled state by @hubertdeng123 in #112188
  • Update ent trial copy by @brendanhsentry in #110904

Cells

Chartcuterie

Ci

Claude Integration

Cmdk

Codeowners

  • Add coverage for markdownTextArea and clean baseline by @chromy in #112339
  • Show all owner names in avatar stack tooltip by @scttcper in #110946
  • Stringify owner IDs and add typed schema structures by @scttcper in #110604

Coding Integrations

Conversations

Dashboards

Deletions

Demo Mode

Detectors

  • Surface API error messages for cron detector creation by @malwilley in #112630
  • Make AlertRuleDetector.objects filter out pending deletion Detectors by default by @kcons in #112550
  • Ensure metric Detector deletion cleans up the AlertRule by @kcons in #112425

Docs

Eap

  • Handle contexts in trace-item attributes by @wmak in #112524
  • Declare http.response_status_code as integer attribute by @DominikB2014 in #111232
  • Replace exclusive time as attribute for count functions by @mjq in #111176

Explore

Grouping

Incidents

  • Compute resolution correctly in metric issue detector by @kcons in #112623
  • Fix 60x resolution inflation when switching to DYNAMIC detection without explicit time_window by @kcons in #112695

Insights

Integrations

  • Hide Fix with Seer button on Slack unfurls by @leeandher in #112940
  • Set sample_rate=1.0 on repo sync metrics by @wedamija in #112861
  • Fix security vulnerabilities in Jira by @ceorourke in #112409
  • Handle null items in organization integrations serialization by @leeandher in #112391
  • Disallow modifying a repo's integration by @cmanallen in #111739
  • Handle forbidden errors in integration proxy by @chromy in #111123
  • Handle unauthorized and rate-limited errors in integration proxy by @chromy in #111030

Issues

  • Hide line numbers on non-in-app stack trace frames by @scttcper in #112885
  • Remove unsed group prop from ContextCard by @scttcper in #112816
  • Exclude gen_ai ops from consecutive HTTP detector by @mrduncan in #112517
  • Prevent double fetch of group search view endpoint by @scttcper in #112324
  • Guard against NaN in supergroup row stats during loading by @scttcper in #112294
  • Include exception header in copy-as-text for new stack trace by @scttcper in #111965
  • Redesign new stack trace grid by @scttcper in #112059
  • Avoid supergroup refetches on row removal by @scttcper in #111865
  • Add stack trace column gap between coverage border and source code by @scttcper in #111556
  • Move coverage legend above stack trace by @scttcper in #111494
  • Apply issue.id filter to postgres queryset candidates by @scttcper in #110757

Logs

Metrics

Modal

  • Avoid modal shift by @natemoo-re in #111666
  • Restore focus to trigger element when modal closes by @JonasBa in #111542

Nav

  • Match secondary page-frame nav link :active color to primary by @JonasBa in #111664
  • Replace aria-selected with aria-current on navigation links by @JonasBa in #111278
  • Cap list item height for page-frame secondary nav variants by @JonasBa in #111195
  • Update stale route links causing unexpected navigation redirects by @JonasBa in #110498

Notifications

  • Handle null provider in organization integrations filter by @mtopo27 in #112368
  • Update alert rule URLs to use /issues/alerts/ prefix by @JonasBa in #110499

Np

  • Updates issue notification data factory to select correct handler class by @GabeVillalobos in #112892
  • Adds attachment to Slack render type, updates metric renderer by @GabeVillalobos in #112312
  • Updates IssueNotificationData, render logic to correctly extract action data by @GabeVillalobos in #111689

Onboarding

  • Add step for OpenAI based framework for conversation ID sources by @constantinius in #112781
  • Change agent monitoring empty state to use openai instead of openai-agents by @constantinius in #112344
  • Pass accessibleOnly to SCM repo search by @jaydgoss in #111895
  • Wrap connected tag in Container to constrain width by @jaydgoss in #111936
  • Handle repo selection race with background link_all_repos by @jaydgoss in #111716
  • Reset downstream state when repository changes by @jaydgoss in #111479

Performance

  • Restore feature parity on EAP Sampled Events tab by @mjq in #111891
  • Bring back user column on segment span tables by @mjq in #111351
  • Use spans dataset for EAP txn summary search bar by @mjq in #111299

Pipeline

Preprod

  • Hide approve button on status check when snapshots already approved by @NicoHinderling in #112978
  • Reapply snapshot PR comment task with TASKWORKER_IMPORTS fix by @runningcode in #112900
  • Use odiff CLI mode to work around server-mode false match bug by @NicoHinderling in #112829
  • Log when PR comment is skipped due to no installable artifacts by @runningcode in #112780
  • Allow branch ref ellipsis in mobile builds table (EME-882) by @cameroncooke in #112774
  • Add organization_slug to snapshot log statements by @NicoHinderling in #112499
  • Add tab=size to size status check settings URL by @mtopo27 in #112352
  • Use RPC service for cross-silo user lookup in snapshot endpoint by @NicoHinderling in #112129
  • Use recompare endpoint and add user-facing status check rerun by @NicoHinderling in #112084
  • Speed up error page on snapshots and improve error UI by @NicoHinderling in #112076
  • Exclude snapshot artifacts from size status check (EME-962) by @runningcode in #111981
  • Post NEUTRAL status check when all artifacts are skipped by @mtopo27 in #111811
  • Prefer display_name for snapshot sidebar labels by @runningcode in #111779
  • Align relative_diff extract_value with frontend percentage convention by @mtopo27 in #111682
  • Differentiate snapshot status check when base_sha is unset by @NicoHinderling in #111658
  • Show total image count in snapshot sidebar sections by @NicoHinderling in #111576
  • Use content_hash as canonical image key for deduplication by @NicoHinderling in #111467
  • Fix typecheck errors from monitor filters reland by @chromy in #111142

Profiling

  • Render flamechart title only in top bar by @JonasBa in #113018
  • Query spans instead of discover on landing page by @mjq in #112251

Releases

  • Support environment filter in the query param by @skaasten in #112805
  • Validate project access in release details endpoint by @michelletran-sentry in #112831
  • Prevent false positive regressions when follows_semver flips after resolution by @shashjar in #111584
  • Add gap between release detail header action groups by @scttcper in #111581

Replays

  • Use Dataset enum instead of string comparisons in replay counts by @scttcper in #111954
  • Update stats link to new path by @priscilawebdev in #111778

Repos

  • Make it clearer when repos are disabled or connected properly by @ryan953 in #111764
  • Filter null integrations in useScmIntegrationTreeData by @ryan953 in #110868

Scraps

  • Status indicator layering by @natemoo-re in #112197
  • Omit type from SVGIconProps by @natemoo-re in #111353

Search

  • Clarify is:linked/is:unlinked filter descriptions by @cvxluo in #111224
  • Render negated multi-value filters with and by @nsdeschenes in #111203
  • Assign return value of date.replace() in parse_iso_timestamp by @karesansui-u in #110504

Seer

  • Use standard hotkey for minimize behavior, remove tab hijacking by @natemoo-re in #112993
  • Feature flag Seer RPC preference reads by @srest2021 in #112865
  • Dont show the Seer subscription banner to orgs with managed subscriptions by @ryan953 in #112810
  • Set a min height for the virtual scrolling Code Review settings table by @ryan953 in #112814
  • Prevent horizontal scrollbar flash on block entry animation by @aliu39 in #112823
  • Clear cache for /seer/onboarding-check/ api response, and iterate on seer config reminder by @ryan953 in #112643
  • Decouple create-pr setting from stopping point by @ryan953 in #112646
  • Convert Seer Repo Details form to new form system, clear onboarding-check cache by @ryan953 in #112645
  • Add links to manage your agent integrations, by @ryan953 in #112642
  • Populate referrer field in agent_handoff analytics from launch path by @JoshFerge in #112523
  • Make widget conditions readable for the Seer Explorer agent by @Mihir-Mavalankar in #112502
  • Fix spacing on the Seer overview page by @ryan953 in #112407
  • Dual-delete Seer project preferences on integration uninstall by @srest2021 in #112296
  • Add dual-write when project preference doesn't exist, and pass full preference to autofix request by @srest2021 in #111966
  • Don't read from org defaults when creating default project preference by @srest2021 in #111967
  • Align project grouping record deletion with Seer API by @sentry in #111756
  • Fix a typo, no dash by @ryan953 in #111558
  • Render explorer panel when page-frame feature is enabled by @JonasBa in #111502
  • Fix race condition in Seer settings dual-write to Sentry DB by @srest2021 in #111477
  • Fix tab normalization so Seer Settings tab hrefs are correct by @ryan953 in #111279
  • Remove noisy capture_exception for expected ObjectDoesNotExist by @aliu39 in #111257
  • Handle missing OrganizationMember in collect_user_org_context by @aliu39 in #111255
  • Rename Autofix Handoff option to be: No Handoff by @ryan953 in #111118
  • Handle enum deserialization in autofix tasks by @sentry in #110959

Seer Explorer

Settings

  • Portal SettingsPageHeader action to TopBar in page frame layout by @priscilawebdev in #112771
  • Surface slug validation errors on org settings form by @cvxluo in #112556
  • Invalidate cache in notification settings by @natemoo-re in #112161
  • Widen teams table actions column by @cvxluo in #111683

Slack

Snapshots

  • Fix staff auth blocking initial size comparison selection by @NicoHinderling in #112739
  • Disable CSS animations for snapshot testing by @rbro112 in #111485
  • Use explicit HEAD rather than merge commit for frontend snapshots by @rbro112 in #111202

Stories

  • Adjust search scroll behavior by @natemoo-re in #112045
  • Avoid circular dependencies on Button by @natemoo-re in #112039

Supergroups

  • Supergroup drawer checkbox, closing fixes by @scttcper in #112999
  • Improve backfill task resilience and observability by @yuvmen in #112968
  • Scope matched groups query to current page by @scttcper in #112864
  • Filter resolved groups from Seer response by @scttcper in #112403
  • Use placeholder data to avoid loading flash on group changes by @scttcper in #112202

Test

Tests

Trace

Tracemetrics

  • Pass draggable attributes to drag button by @narsaynorath in #112981
  • Prevent header text wrapping in samples table during loading by @nsdeschenes in #112576
  • Allow delete for big number when more than 1 field by @narsaynorath in #111791
  • Prevent widget builder from querying before ready by @narsaynorath in #111665
  • Update aggregate defaults in dashboards by @narsaynorath in #111521
  • Check type and unit objects for yAxis by @narsaynorath in #111132
  • Legend labels should be labelled uniquely with different aggs by @narsaynorath in #111114
  • Open in explore for multi metrics opens each by @narsaynorath in #110993
  • Update filter bar to handle multiple metrics by @narsaynorath in #111011
  • Support multi metric selection in y-axes by @narsaynorath in #110983

Typing

  • Type post-process by @thetruecpaul in #112203
  • Codemod -> None to a bunch of tests by @thetruecpaul in #111812

Ui

  • Fix the logs page divider by @priscilawebdev in #113024
  • Fix "Missing queryFn" error in useAggregatedQueryKeys by @scttcper in #112488
  • Remove overflow hidden from GuidedSteps StepDetails by @priscilawebdev in #112336
  • Increase node memory limit locally, decrease ci by @scttcper in #112066
  • Prevent code block overflow in GuidedSteps onboarding by @nikolovlazar in #111657
  • Use design system Text components for organization role field by @JonasBa in #111624
  • Preserve Seer paths in URL normalization by @scttcper in #111317
  • Preserve seer paths in url normalization by @scttcper in #111322
  • Fix ScrollCarousel story crash in production by @priscilawebdev in #111184

Workflow

  • Replace getSantry with dedicated GH app for api schema workflow by @Jeffreyhung in #111720
  • Prevent IndexError when serializing workflows without WDCGs by @kcons in #110915

Workflows

  • Don't return Workflows while they're being deleted by @kcons in #112541
  • Rule.status derived from snooze, not Workflow.status by @kcons in #112302
  • Add detector group caching in ensure_association_with_detector by @klochek in #111714
  • Add single-written workflow engine support to ProjectAlertRuleDetailsEndpoint by @kcons in #111379
  • Make TTL a definitional part of CacheMapping rather than an optional param by @kcons in #111376
  • Don't crash when no action filter are provided by @kcons in #110905

Other

  • (_admin) Dedupe GroupSubscription conflicts during user merge by @billyvg in #111566
  • (admin) Use supported Sentry app badge variant by @dcramer in #112086

This changelog has been truncated. See the full changelog for all changes.

Sentry

Users and logs provide clues. Sentry provides answers.

What's Sentry?

Sentry is the debugging platform that helps every developer detect, trace, and fix issues. Code breaks, fix it faster.

Official Sentry SDKs

Resources

Description

  • Swift Tools
View More Packages from this Author

Dependencies

  • None
Last updated: Tue Apr 21 2026 04:39:13 GMT-0900 (Hawaii-Aleutian Daylight Time)