Sentry 26.7.1

26.7.1
Added 20
  • Add GALE serializer and swap response in group details
  • Require GroupActions to opt-in to be considered user-visible
  • Add pipeline_hash to GroupDerivedData
  • Serialize derived data on the returned group
  • Register templates for assigned/unassigned/note notifications
  • Register status_change activities on notification platform
New Features ✨
Action Log
  • Add GALE serializer and swap response in group details by @ceorourke in #119991
  • Log instead of publish temporarily by @ceorourke in #120262
Action Log
  • Require GroupActions to opt-in to be considered user-visible. by @kcons in #120159
  • Add pipeline_hash to GroupDerivedData by @kcons in #119951
  • Serialize derived data on the returned group by @malwilley in #119844
Activity
  • Register templates for assigned/unassigned/note notifications by @leeandher in #119917
  • Register status_change activities on notification platform by @leeandher in #119865
Ai Monitoring
  • Generate conversation titles from gen_ai spans by @vgrozdanic in #120309
  • Add AIConversationMetadata model by @vgrozdanic in #120078
Auth
  • Add option by @nora-shap in #119857
  • Add analytics events for signup email verification by @nora-shap in #119585
Autofix
  • Refactor code-change feedback list into composable cells by @billyvg in #120418
  • Carry review id and state on PR review feedback by @billyvg in #120458
  • Render GitHub PR review body feedback in code-changes card by @alexsohn1126 in #120342
  • Check-suite feedback view in PR iteration UI by @joseph-sentry in #120209
  • Trigger PR iteration from failed check suites by @joseph-sentry in #119733
  • Add fun messages, improve loading conditions for enabling notifications in autofix by @ryan953 in #119772
  • Trigger notifications whenever autofix steps complete by @ryan953 in #119364
Conversations
  • Disallow negation filters on conversations page by @ArthurKnaus in #120343
  • Add copy transcript button to redesigned view by @ArthurKnaus in #120341
  • Default span selection per view, merge drawer URL state by @ArthurKnaus in #120204
  • Collapse tool calls in the transcript by @ArthurKnaus in #119807
  • Explain empty conversation transcripts by @ArthurKnaus in #119802
Dashboards
  • Add last visited by user logic by @adrianviquez in #120286
  • Delete the grid view from dashboards pages by @adrianviquez in #120158
  • Delete the custom dashboards tab by @adrianviquez in #119973
  • Add (no value) option to global filters by @adrianviquez in #119026
  • Add starred dashboards to dashboards sidebar by @adrianviquez in #119880
  • Add reorder and starred endpoints by @adrianviquez in #119784
  • Teach agentic dashboard generation about heat maps by @gggritso in #119788
Derived Data
  • Stamp GroupDerivedData with its initial pipeline hash by @kcons in #119947
  • Add Pipeline.pipeline_hash by @kcons in #119856
Difs
  • Feature-gate Objectstore DIF reads by @lcian in #119806
  • Dual-write DIFs to Objectstore by @lcian in #119805
Discover
  • Remove transactions and surface errors by @nikkikapadia in #119062
  • Hide transactions saved queries by @nikkikapadia in #119246
  • Deprecate discover ff by @nikkikapadia in #120067
Dynamic Sampling
  • Floor transaction sample rate to bound extrapolation by @shellmayr in #118561
  • Count projects sampled below 100% in per-org pipeline by @shellmayr in #120065
Explore
  • Suggest ESQ from humanized filter text by @manessaraj in #119243
  • Highlight every matching search term in logs and spans by @JoshuaKGoldberg in #119310
External Mcp
  • Switch datadog mcp integrations to all pass authentication via headers, instead of the deprecated datadog specific token by @wedamija in #119966
  • Connect org level datadog integration to Seer by @wedamija in #119853
  • Implement org level ui for configuring datadog integration by @wedamija in #119777
  • Add org-level Datadog integration for Seer by @wedamija in #119690
Gal
  • Trigger derived data rebuild after project backfill completes by @yuvmen in #119783
  • Add reset option to project-level backfill task by @yuvmen in #119556
  • Double-write Activity as GALE by @thetruecpaul in #118941
Gdd
  • Add task to find and update projects with stale derived data by @kcons in #120410
  • Add index on pipeline_hash to allow us to find and filter old data efficiently by @kcons in #120406
  • GroupDerivedData debug endpoint by @kcons in #120255
  • Add promote_to_live by @kcons in #120243
  • Add GroupDerivedData.generated_at by @kcons in #120166
Issue Progress
  • Add inbox assignment filter by @malwilley in #120251
  • Add initial inbox page by @malwilley in #120213
  • Track issue blocker in derived action log data by @malwilley in #119970
  • Read progress from derived data on group by @malwilley in #119941
Issue Search
  • Rank progress sort past the cap with Snuba filters by @roggenkemper in #119952
  • Order progress sort in Postgres past the candidate cap by @roggenkemper in #119736
Issues
  • Show progress state in the issue preview by @roggenkemper in #120454
  • Support Autofix trigger activities by @scttcper in #120366
  • Add issue.autofix_state search key for autofix overview by @NicoHinderling in #120293
  • Update v2 activity timeline markers by @scttcper in #120278
  • Remove fake auto-resolution by @scttcper in #120153
  • Global register controls, design system styles by @scttcper in #119732
  • Attribute pull request activities by @scttcper in #119977
  • Run auto-resolve every 10 minutes by @scttcper in #120149
  • Add 'Open in Explore' as Logs fold action by @JoshuaKGoldberg in #119905
  • Refine regressed activity layout by @scttcper in #119755
  • Clarify assignee tooltip details by @scttcper in #119176
Native
  • GA minidump multi-exceptions by @jjbayer in #119808
  • Symbolicate multiple native exceptions by @jjbayer in #119780
Ourlogs
  • Clarify rate limit error (429) message by @JoshuaKGoldberg in #119825
  • Show timestamps in detail view by @JoshuaKGoldberg in #119517
Pr Iteration
  • Remove 👀 reaction after iteration completes by @alexsohn1126 in #120223
  • React with 🎉 on comment after iteration completes by @alexsohn1126 in #120226
Pr Metrics
  • Add reviews_requested_count to scm.pr.closed by @giovanni-guidini in #120348
  • Forward per-check recovery detail on the judge wire by @vaind in #120113
  • Add repo provider and visibility to scm.pr.closed by @giovanni-guidini in #119903
  • Include group_ids in delegated agent attribution by @giovanni-guidini in #119810
  • Route readers to the document, sweep it, and validate parity by @vaind in #119574
  • Reap PullRequestMetrics rows stuck at JUDGE_IN_PROGRESS by @giovanni-guidini in #119821
  • Capture new lifecycle signals on the document path by @vaind in #119572
  • Route PR activity to the reduced document behind a cutover option by @vaind in #119571
Preprod
  • Add skipped status check endpoints by @jamieQ in #119824
  • Add settings UX for size analysis PR comment rules by @mtopo27 in #120205
  • Add git SHAs to default preprod search attributes by @mtopo27 in #120129
  • Expose size PR comment options in project API by @mtopo27 in #120120
  • Post size analysis results as PR comments by @mtopo27 in #119422
  • Expand dotted build codes in check-for-update APIs by @trevor-e in #119759
Releases
  • Create a template for release activity by @leeandher in #119955
  • Add enable-release-creation feature to remaining release auto-creation paths by @shellmayr in #120057
  • Add release auto-creation toggle to project settings by @shellmayr in #117786
  • Add project toggle for release auto-creation from telemetry by @shellmayr in #117785
Search
  • Show Ask Seer results directly by @nsdeschenes in #120122
  • Register agentic triage sort feature flag and options by @Mihir-Mavalankar in #120084
  • Rework Ask Seer query token styling by @nsdeschenes in #119846
  • Register humanized ESQ feature flag by @manessaraj in #120072
  • Add Ask Seer regenerate action by @nsdeschenes in #119909
  • Refine Ask Seer empty-state heading by @nsdeschenes in #119818
  • Rework Ask Seer polling status by @nsdeschenes in #119714
Seer
  • Smart Assignment scoring by @hobzcalvin in #119944
  • Open autofix run drawer inline from overview by @mtopo27 in #120422
  • Record agentic-triage-sort flag in agent run options by @Mihir-Mavalankar in #120473
  • Add assignee filter and per-card assignee to Autofix Overview by @mtopo27 in #120421
  • Thread autofix_automation_tuning into night shift's triage payload by @trevor-e in #120386
  • Smart Assignment delivery by @hobzcalvin in #119943
  • Polish autofix overview cards and fix run-activity timestamps by @jshchnz in #120425
  • Attribute agent actions to delegating users by @gricha in #120172
  • Gate agent writes behind short-lived capability tokens by @gricha in #118539
  • Autofix overview sections driven by issue.autofix_state by @NicoHinderling in #120294
  • Assign triggering user when a Seer PR exhausts its iteration cap by @vaind in #120194
  • Back get_metric_metadata with the metrics endpoint by @DominikB2014 in #120076
  • Add global option to enable night shift for legacy Seer orgs by @trevor-e in #120285
  • Request review from triggering user on green Seer PRs by @vaind in #120185
  • Render night shift triage reason as markdown by @trevor-e in #120138
  • Add /bash-mode-on and /bash-mode-off slash commands by @Zylphrex in #120206
  • Ingest GitHub PR review webhooks for Autofix iteration by @alexsohn1126 in #119630
  • Back get_metric_metadata with the metrics endpoint by @DominikB2014 in #120102
  • Add agentic triage scoring for night shift candidate selection by @Mihir-Mavalankar in #120114
  • Show skip reason on the workflows page Skipped tag by @trevor-e in #120126
  • Link delegated coding agent PRs to SeerRunPullRequest by @trevor-e in #119427
  • Experimenting around by @jshchnz in #119794
  • Add inline docs embed by @natemoo-re in #119823
  • Register Night Shift UI feature by @sentry-junior in #119902
  • Serialize pull requests on Seer runs by @jshchnz in #119795
  • Smart-assignment dispatch and workflow wiring by @hobzcalvin in #119693
  • Add a demo runs list UI with search, pagination, and outputs by @chromy in #118828
  • Track coding agent handoff status in Sentry's DB by @trevor-e in #119412
  • Persist and surface night shift skip_reason by @trevor-e in #119700
  • Add autofix-browser-notifications feature flag by @ryan953 in #119737
Seer Infra Telemetry
  • Implement GcpOrgMonitoringProvider by @shashjar in #120171
  • Add setup wizard pipeline UI for GCP integration by @shashjar in #120093
  • Add GCP MCP org-level integration provider by @shashjar in #119774
Sentry Apps
  • GA custom webhook headers by @cvxluo in #120274
  • GA granular webhook subscriptions by @cvxluo in #120271
  • GA the custom webhook headers UI by @cvxluo in #120269
  • Graduate granular webhook subscription UI by @cvxluo in #120265
  • Allow webhook subscriptions before the url is set by @cvxluo in #120160
  • Indicate custom formatting applied to routines by @cvxluo in #120145
  • Register flag for app templates by @cvxluo in #120142
  • Expose the webhooks flag by @cvxluo in #119843
  • Add urls to issue workflow webhook payloads by @cvxluo in #119680
Stories
  • Import image gallery using import.meta.glob by @scttcper in #119632
  • Add custom favicon for stories pages by @cleptric in #119683
Trace Items
  • Filter metrics to those with context via context_only by @DominikB2014 in #120212
  • Add endpoint to list metric names and context by @DominikB2014 in #119740
Tracemetrics
  • Wrap seer combobox token for equation formatting by @narsaynorath in #120400
  • Remove equation feature flag definitions by @narsaynorath in #119921
Weekly Report
  • Add WoW change to Total Spans by @amy-chen23 in #120352
  • Add spans presentation layer for weekly email by @amy-chen23 in #120231
  • Add spans data layer with per-project counts by @amy-chen23 in #120230
  • Add spans chart data layer by @amy-chen23 in #118860
Other
  • (admin) Gift recurring credits page by @dashed in #119435
  • (ai) Prepare task producer for gen_ai conversation title generator by @vgrozdanic in #120441
  • (alerts) Document request/response schema for the metric alert rule index endpoints by @azulus in #120085
  • (api) Document and publish trace item stats endpoint by @cvxluo in #117061
  • (attributes) Add public alias for sentry.trace_lifecycle attribute by @Lms24 in #120327
  • (breadcrumbList) Typed breadcrumb redesign with rich items, validated on real pages by @Jesse-Box in #119060
  • (ci) Check embed_widgets.generated.json sync by @natemoo-re in #120074
  • (compactSelect) ENTER in searchable selects by @TkDodo in #119713
  • (control) Drop unconsumed check_run webhook actions at the parser by @vaind in #119829
  • (copilot) Add agent session URL to autofix panel by @sehr-m in #119874
  • (data-browsing) Rename "Heat Map" to "Heatmap" in the UI by @gggritso in #119771
  • (derived) Add build_and_promote_derived_data with generation tasks by @kcons in #120292
  • (flags) Register SCM project creation flag by @jaydgoss in #120349
  • (inbound-filters) Add table & modal by @shellmayr in #117668
  • (ingest) Add option to reprocess events not in nodestore by @bmckerry in #120133
  • (integrations) Add action-row layout to the create-integration modal by @cvxluo in #120128
  • (low-value-spans) Fetch costs on demand by @constantinius in #119610
  • (metrics) Add metrics.set for unique-value set metrics by @armenzg in #119716
  • (navigation) Add translation markers toggle to command palette by @JonasBa in #116784
  • (night-shift) Add structured logging to agentic triage functions by @Mihir-Mavalankar in #120218
  • (processing) Define new async tasks by @jjbayer in #119758
  • (refactor-tasks) Add React compiler conventions by @nsdeschenes in #119621
  • (replays) Roll out FutureTrackingProducer to eap_items by @bmckerry in #119743
  • (scraps) Add chat primitives (UserBubble, ToolCallIndicator) and adopt in Seer Explorer by @priscilawebdev in #119493
  • (seer-agent) Allow use of bash mode in seer agent by @Zylphrex in #120075
  • (seer-billing) Remove nullability for organization contributor provider and hostname by @srest2021 in #119695
  • (slack) Make nudge frequency configurable via option by @alexsohn1126 in #119953
  • (snuba) Add response logging to RPC calls by @JoshuaKGoldberg in #119562
  • (spans) Count segments with gen_ai conversation ids by @vgrozdanic in #119919
  • (taskbroker) Add Application Argument to Task Sender by @george-sentry in #119860
  • (teapot-frontend) Integrate Teapot GPU symbolication service with Sentry by @mujacica in #119376
  • (trace) Add dismissable feedback banner for new trace waterfall by @mjq in #120465
  • (ui) Add org feature flag controls (frontend only) by @scttcper in #119798
  • (upload) Multipart feature flag by @jjbayer in #119888
  • Refresh logs empty-state copy / include prompt by @bcoe in #119660
Bug Fixes 🐛
Action Log
  • Give action log-based Activity APIs their own feature by @kcons in #120368
  • Include stack info in our missing context error by @kcons in #119930
  • Provide ActionContext to process_autofix_updates by @kcons in #119928
Alerts
  • Fix bug in percent_increase where evaluation was incorrect by @saponifi3d in #120356
  • Ensure that incompatible metric alert messages are only shown for ticketing actions by @malwilley in #119741
Autofix
  • Keep sticky headers above row actions by @NicoHinderling in #120414
  • Wrong feature flag for autofix plan by @Zylphrex in #120253
  • Resolve pure-render-functions violation in SeerEnableNotifications by @sentry in #120021
  • Resolve check-suite autofix_run at construct time by @joseph-sentry in #120068
  • No-op PR iteration when Seer run is missing by @joseph-sentry in #120111
  • Handle error state in autofix code changes by @Zylphrex in #119876
  • Render PR review comments by @joseph-sentry in #119750
  • Import usePrompt instead of usePrompts for checking autofix-sw-notification by @ryan953 in #119753
Conversations
  • Prevent blank message bubbles in the transcript by @ArthurKnaus in #120176
  • Preserve reasoning for reasoning-only assistant turns by @vgrozdanic in #119914
Dashboards
  • Prevent errors with integer titles in incremental_title when copying dashboards by @sentry in #120201
  • Add widget action tooltips by @jamieQ in #120375
  • Resolve static-component-definitions in GenericFilterSelector by @sentry in #120033
  • Show a No Data state instead of a generic error by @gggritso in #119940
  • Legend toggle discards unsaved filters by @nikkikapadia in #119760
  • AI agents dashboard tag click updates global filters by @nikkikapadia in #119521
Data Browsing
  • Use canvas renderer for time series graphs by @gggritso in #120208
  • Turn off Safari user selection on ECharts charts by @gggritso in #119845
  • Speed up heat map drag-to-select by @gggritso in #119776
Detectors
  • Handle invalid body size values in large payload detector by @lobsterkatie in #120157
  • Use correct key for transaction name by @lobsterkatie in #120118
  • Handle string request_start values in HTTPOverheadDetector by @lobsterkatie in #119994
  • Stop short-circuiting detection on first error by @lobsterkatie in #120000
Discover
  • Put in reverse redirect and change page titles by @nikkikapadia in #120395
  • Adjust max pickable days options to mirror spans by @nikkikapadia in #120130
  • Remove transactions dataset options by @nikkikapadia in #120073
Dynamic Sampling
  • Only query transaction volumes for projects that need balancing by @shellmayr in #120026
  • Skip 100% rate projects in tx balancing by @shellmayr in #119907
Eslint
  • Allow nested arrow functions with untyped parameters by @TkDodo in #120189
  • Ignore linting agents directory by @TkDodo in #120191
  • Improve the prefer-info-text eslint rule by @TkDodo in #120004
  • Enable unicorn/filename-case eslint rule by @ryan953 in #120103
Explore
  • Reset aggregate cursor on filter changes by @sentry-junior in #120200
  • Improve chart empty-state guard by @sentry in #120014
  • Remove trace links from aggregate table by @nsdeschenes in #120091
Gal
  • Add missing context to fetch commits task by @thetruecpaul in #120112
  • Add missing context to organization release details endpoint by @thetruecpaul in #120116
  • Add missing context to reprocessing by @thetruecpaul in #120001
  • Add missing context to gitlab webhooks by @thetruecpaul in #120082
  • Add missing context to unmerge2 by @thetruecpaul in #120002
  • Add missing context to bitbucket webhook by @thetruecpaul in #119996
  • Add missing context to occurrence consumer by @thetruecpaul in #119976
  • Add missing context to github webhook issues by @thetruecpaul in #119974
  • Add missing context to clear expired snoozes task by @thetruecpaul in #119975
  • Add context scope to post-process by @thetruecpaul in #119754
  • Re-enable gating around activity double-write by @thetruecpaul in #119766
Gdd
  • Incorporate generated_at into incremental update checks by @kcons in #120239
  • Add SeerRCA action to track_root_cause by @kcons in #119782
  • Include more resolution events in track_status by @kcons in #119778
Integrations
  • Report matching result count in search analytics by @cvxluo in #119649
  • Allow rotating token-only app secrets by @scttcper in #120050
Issues
  • Restore status banner progress markers by @scttcper in #120411
  • Serialize Autofix trigger activity type by @scttcper in #120372
  • Use ContainerQueries for IssueListFilters by @TkDodo in #120314
  • Restore sidebar comment actions in activity v2 by @scttcper in #120283
  • Clean up timeline marker prop by @scttcper in #120264
  • Handle invalid release resolution searches by @scttcper in #120127
  • Handle non-numeric issue IDs in bulk PUT endpoint by @sentry in #119984
  • Stop activity line at final marker by @scttcper in #119972
  • Keep ongoing status transitions atomic by @scttcper in #119882
  • Adjust minor issue activity details by @scttcper in #119756
  • Make Recommended sort selectable in command palette by @roggenkemper in #119850
  • Balance stack trace frame headers by @scttcper in #119792
Ourlogs
  • Scope Open in Explore link to the whole trace by @JoshuaKGoldberg in #120066
  • Prefetch trace item details on hover for embedded rows by @JoshuaKGoldberg in #119752
Pr Metrics
  • Stop aborted check reruns from erasing a recorded verdict by @vaind in #120123
  • Resolve run_id/group_id locally for Cursor attribution by @giovanni-guidini in #119815
Preprod
  • Link snapshot PR comments to /snapshots/ settings route by @mtopo27 in #120493
  • Escape untrusted artifact metadata in VCS Markdown by @jamieQ in #119742
React
  • Move Date.now() out of render in useReplayPageview hook by @sentry in #120022
  • Hoist component resolution in OverrideOrDefault by @sentry in #120028
Replays
  • Resolve complete-hook-dependencies in useReplayCurrentTime by @sentry in #120020
  • Use window.location.assign for video download by @sentry in #119980
Search
  • Blur query builder after Ask Seer selection by @nsdeschenes in #120125
  • Make ctrl/cmd+delete in search delete to the cursor by @JoshuaKGoldberg in #120097
  • Prevent Ask Seer overflow and bleed-through by @nsdeschenes in #119900
  • Preserve negation on quoted colon-value filters by @mrduncan in #119789
Seer
  • Anchor overview vitals tooltips to their text and show local time by @jshchnz in #120478
  • Skip page filter URL sync on autofix overview by @NicoHinderling in #120415
  • Support agent tokens in release endpoints by @gricha in #120173
  • Correct overview action pending and empty-state checks by @NicoHinderling in #120397
  • Rate-limit autofix triggers from night shift by @trevor-e in #120347
  • Restore issue summary generation for seat-based orgs by @Mihir-Mavalankar in #120222
  • Stop night shift org fan-out from sharing one trace by @trevor-e in #119997
  • Fix autofix prompt key and register it by @ryan953 in #120017
  • Strengthen timestamp embed description by @natemoo-re in #119666
  • Guard against undefined pullRequests in Night Shift UI by @sentry in #119689
  • Fix chvron direction in seer settings by @ryan953 in #119833
  • Format repository integration names by @sentry-junior in #119797
Seer Billing
  • Fix org contributors uniqueness constraint to use provider+hostname, not integration id by @srest2021 in #119965
  • Look up organization contributor by provider & hostname instead of integration id by @srest2021 in #119354
Spans
  • Sample process segment task transactions by @lvthanh03 in #120207
  • Do not propagate traces for process segments task by @lvthanh03 in #120203
  • Handle missing span descriptions in MN + 1 detector by @lobsterkatie in #119887
  • Query gen AI reasoning level attribute by @constantinius in #119719
Trace
  • Make span details replay preview independent of transactions by @mjq in #120365
  • Avoid unnecessary trace metadata fallback by @nsdeschenes in #119922
Traces
  • Remove border around project icons in trace header by @priscilawebdev in #120310
  • Use spans JSON endpoint for transaction deprecation orgs by @nikkikapadia in #119963
  • Preserve logs when trace metadata fails by @nsdeschenes in #120098
Ui
  • Show gen AI reasoning level attribute by @constantinius in #119720
  • Surface backend form submission errors by @sentry-junior in #119739
View Hierarchy
  • Handle null hierarchy from failed JSON parsing by @priscilawebdev in #120178
  • Make windows optional in ViewHierarchyData type by @priscilawebdev in #120177
  • Handle missing 'windows' property in ViewHierarchyData by @sentry in #120006
Weekly Report
  • Extend format_duration_ms to include larger values by @amy-chen23 in #120468
  • Prevent populating cache on admin runs by @amy-chen23 in #119681
Weekly Reports
  • Reduce key error issues chunk size from 100 to 25 by @amy-chen23 in #120087
  • Simplify outcomes query by removing redundant groupby by @amy-chen23 in #120089
  • Eliminate expensive JOIN in issue summaries query by @amy-chen23 in #120088
Other
  • (action log) Migrate GroupActionLogEntry date_updated to have a default value of now() by @ceorourke in #119791
  • (agent-monitoring) Remove Truncated label from repaired JSON output by @ArthurKnaus in #120445
  • (api) Scope trace item context PUT endpoints to event:write, not org:write by @DominikB2014 in #120215
  • (ask-seer) Remove duplicate header styles by @nsdeschenes in #120236
  • (attachments) Preserve screenshot aspect ratio on resize by @JoshuaMoelans in #117194
  • (auth) Add debug logging by @nora-shap in #120279
  • (coding-conventions) Move OverrideOrDefault component definition to module scope in AccountClose by @sentry in #120027
  • (crons) Move OnboardingPanelHook to module scope to satisfy static-component-definitions by @sentry in #120018
  • (data-scrubbing) Prevent TypeError when relayPiiConfig is missing by @sentry in #119897
  • (db) Removes unpickling logic from GZippedDictField by @GabeVillalobos in #119770
  • (derived data) Log when the project-level task has nothing to do by @kcons in #119785
  • (devserver) Wait for Rspack shutdown on interrupt by @jamieQ in #119942
  • (difs) Jitter Objectstore multipart part upload retries by @lcian in #120188
  • (hybridcloud) Honor skip-on-failure in parallel webhook drains by @joseph-sentry in #119934
  • (inbound-filters) Rename custom filters tab URL segment by @shellmayr in #119812
  • (inc-2344) Route replay bulk delete job to long pool by @nikkikapadia in #120353
  • (issue-activity) Hide some duplicative pull request activity from the UI by @malwilley in #120387
  • (issue-details) Handle null localStorage in getFoldSectionKey by @sentry in #120281
  • (issue-progress) Treat escalating issues as open by @malwilley in #120259
  • (issue-search) Run native progress path when date_to is now by @roggenkemper in #119923
  • (js) Don't attach security token to wildcard origins by @loewenheim in #120182
  • (msteams) Support single-tenant Azure Bots via new msteams.tenant-id option by @futureweb in #119389
  • (nav) Highlight Explore for preprod pages by @mtopo27 in #119544
  • (night-shift) Exclude rage clicks and scale re-ranking pool in agentic triage by @Mihir-Mavalankar in #120252
  • (nightshift) Fix all skips by @chromy in #119896
  • (options) Stop truncating option values in WebhookPresenter by @joshuarli in #120371
  • (profiling) Use correct proguard uuid for android sample v2 chunks by @markushi in #120429
  • (project-creation) Stop the SCM alert section bouncing on option switch by @jaydgoss in #119749
  • (projectconfig_cache) Disable transactions for deletes by @sentry-junior in #119817
  • (release-thresholds) Apply the status endpoint's release prefetches by @cvxluo in #120094
  • (request-error) Restore prototype chain for RequestError subclassing by @sentry in #119894
  • (routing) Move legacy event redirect into OrganizationContext tree by @shashjar in #120132
  • (scraps) Fix responsive display flex & grid emit by @TkDodo in #120326
  • (sdkcd) Attribute hybrid crashes to top-level SDK versions by @sentry-junior in #119590
  • (sentry apps) Add user to rpc calls by @Christinarlong in #120268
  • (settings) Fill organization in MCP URLs by @sentry-junior in #120110
  • (source-maps) Fall back to JavaScript docs by @sentry-junior in #120101
  • (stats) Hide no_parent_span client outcome by @Lms24 in #120302
  • (stories) Wrap stories in their own TrackingContextProvider by @TkDodo in #120190
  • (structuredEventData) Remove inline Wrapper component in RecursiveStructuredData by @sentry in #120038
  • (symbolication) Attach original event ID to SDK scope by @coyaSONG in #119779
  • (tooltip) Prevent TypeError when value is undefined in chart tooltip by @sentry in #119609
  • (trace-details) Prevent RangeError from invalid timestamp query param by @sentry in #119981
  • (trace-items) Align metrics context to the attributes details shape by @DominikB2014 in #120344
  • (tracemetrics) Allow equations in validation endpoint by @narsaynorath in #119747
  • Use TopBar.Slot instead of manual h1 heading by @TkDodo in #120055
  • Revert "ref(feedback): emit metric instead of outcome for ingest denylist (#97970)" by @aliu39 in #119793
Documentation 📚
  • (seer) Add embeds story w/ examples by @natemoo-re in #120108
Internal Changes 🔧
Api
  • Correct release threshold response types by @cvxluo in #119925
  • Type org member user as always present and nullable by @cvxluo in #119867
  • Rename trace item stats symbols and response key by @cvxluo in #117055
Billing
  • Add trace_log_sample_rate to service_method decorator by @volokluev in #119839
  • Bump sentry-protos to 0.45.0 by @skonves in #119773
Control
  • Pending deletion for dead OrganizationMemberTeamReplica table by @strongs in #120165
  • Remove control callees for OrganizationMemberTeam replication by @strongs in #120161
  • Stop regions from replicating OrganizationMemberTeam by @strongs in #120156
  • Remove last/test-only reader of OrganizationMemberTeamReplica by @strongs in #120155
  • Actually drop the dead TeamReplica table by @strongs in #119654
  • Pending deletion for dead TeamReplica table by @strongs in #119651
Conversations
  • Drop New suffix from redesigned components by @ArthurKnaus in #120439
  • Remove redesign feature flag and old components by @ArthurKnaus in #120434
  • Use scraps UserMessage in UserMessageBlock by @priscilawebdev in #120301
Dashboards
  • Remove data-browsing-heat-map-widget flag declaration by @gggritso in #119913
  • Remove data-browsing-heat-map-widget flag usage by @gggritso in #119855
  • Remove data-browsing-heat-map-widget backend flag usage by @gggritso in #119854
  • Unregister visibility-dashboards-async-queue flag by @cvxluo in #119674
  • Graduate visibility-dashboards-async-queue flag by @cvxluo in #119673
Deps
  • Bump the sentry-dependencies group across 1 directory with 4 updates by @dependabot in #120090
  • Bump sentry-protos to 0.46.0 by @shellmayr in #120322
  • Bump vroomrs to 0.1.23 by @markushi in #120305
  • Move to proper pnpm monorepo by @natemoo-re in #120117
  • Bump type-fest from 5.2.0 to 5.8.0 by @dependabot in #119577
  • Bump yaml from 2.8.3 to 2.9.0 by @dependabot in #119958
  • Bump the sentry-dependencies group across 1 directory with 5 updates by @dependabot in #119956
  • Update Dependabot groups by @scttcper in #119950
Detectors
  • Use logging helper in HTTP overhead detector by @lobsterkatie in #120261
  • Refactor get_span_evidence_value and strip whitespace by @lobsterkatie in #120121
  • Always denote no span ids with an empty list by @lobsterkatie in #119866
Dynamic Sampling
  • Remove unused small transactions option by @shellmayr in #120330
  • Remove dead small-transactions pass from tx boosting by @shellmayr in #120195
  • Skip orgs without active projects in per-org scheduler by @shellmayr in #119889
  • Stop double-capturing per-org task errors by @shellmayr in #119906
  • Add xfail test for per-org tx volume query starvation by @shellmayr in #119915
  • Move blended-100% gate out of the comparison path by @shellmayr in #119723
Eslint
  • No-unnecessary-condition for alert by @TkDodo in #120197
  • Skip irrelevant files in default export rule by @scttcper in #120210
Explore
  • Clean up now-unused code for direct exports (as opposed to modals) by @JoshuaKGoldberg in #120139
  • Re-balance heat map chunk loading by @gggritso in #119748
Forms
  • Migrate admin user edit off JsonForm to scraps form by @priscilawebdev in #119183
  • Migrate organization join request off deprecatedforms to scraps form by @priscilawebdev in #119194
  • Migrate accept project transfer off deprecatedforms to scraps form by @priscilawebdev in #119193
  • Migrate create issue view modal off deprecatedforms to scraps form by @priscilawebdev in #119190
  • Migrate rename issue view modal off deprecatedforms to scraps form by @priscilawebdev in #119189
  • Migrate project Seer settings off JsonForm to scraps form by @priscilawebdev in #119185
Gal
  • Clean up 100%-open rollout option by @thetruecpaul in #119871
  • Use composite (datetime, id) cursor for project backfill by @yuvmen in #119744
Gdd
  • Remove group_id from _process_batch by @kcons in #120232
  • Add _drain_log helper by @kcons in #120164
Issues
  • Make preview priority and assignee icon-only by @roggenkemper in #120462
  • Remove awaiting input page by @malwilley in #120476
  • Remove Details and Events tabs from issue preview by @roggenkemper in #120448
  • Remove activity-based issue progress derivation by @malwilley in #120350
  • Drop the merge-unmerge max-group-times-seen option by @cvxluo in #120273
  • Remove virtual auto-resolve UI by @scttcper in #120154
  • Remove dead group module by @mrduncan in #119767
O11y
  • Bump sentry-sdk to 2.66.1 by @alexander-alderman-webb in #120329
  • Modify sample_rate header in MultiplexingTransport by @alexander-alderman-webb in #120306
Ourlogs
  • Remove ourlogs-pinning feature flag (backend) by @JoshuaKGoldberg in #120064
  • Remove ourlogs-pinning feature flag (frontend) by @JoshuaKGoldberg in #120063
Scm Project Creation Flow
  • Fixing flaky test by @Abdkhan14 in #119745
  • Centralizing and using disabled sub… by @Abdkhan14 in #119420
Scraps
  • Rename UserBubble to UserMessage and add width prop by @priscilawebdev in #120300
  • Add chat primitives (MessageRow, AssistantMessage, MessageActions) by @priscilawebdev in #120052
  • Add dedicated container query breakpoint tokens by @priscilawebdev in #119804
  • Rename ProjectsSavedBadge to ProjectsBadge by @TkDodo in #120187
  • Stabilize InfoText overflow handling by @TkDodo in #119904
  • Improve InfoText overflow handling by @TkDodo in #119892
Search
  • Share Ask Seer combobox implementation by @nsdeschenes in #120346
  • Match Ask Seer option hover color by @nsdeschenes in #120216
Seer
  • Remove verbose debug_log instrumentation from GitLab webhooks by @billyvg in #118192
  • Move bash mode enablement to SeerAgentClient construction by @Zylphrex in #120225
  • Register autofix-rca-in-seer feature by @rbro112 in #120104
  • Remove post_process_fixability autofix for seat based orgs by @chromy in #119811
Sentry Apps
  • Clean up sentry app form by @cvxluo in #120217
  • Extract the sentry app form fields by @cvxluo in #120471
  • Stop capturing external-request errors from the issue form by @priscilawebdev in #119891
Spans
  • Add default parameter to attribute_value helper by @lobsterkatie in #119870
  • Log full problem objects on span-first detector mismatch by @lobsterkatie in #119137
Taskbroker
  • Update taskbroker-client to 0.20.13 by @evanh in #120489
  • Add raw-named namespaces for profiles/events ingest tasks by @untitaker in #120079
Ui
  • Make TypeScript checker opt in by @scttcper in #120474
  • Keep Story discovery out of app HMR rebuilds by @scttcper in #119885
  • Upgrade gettext-parser to v9, add local loader by @scttcper in #119848
  • Remove unused Node polyfill buffer by @scttcper in #119835
  • Remove process browser polyfill by @scttcper in #119828
Weekly Report
  • Batch issue summaries query to avoid statement timeout by @amy-chen23 in #120297
  • Rename weekly report functions by @amy-chen23 in #119841
  • Include error issues in "Resolved Last Week" by @amy-chen23 in #119437
Weekly Reports
  • Remove weekly-report-project-exclusions backend flag by @amy-chen23 in #119852
  • Remove weekly-report-project-exclusions frontend flag check by @amy-chen23 in #119851
  • Update admin page for sending weekly reports by @amy-chen23 in #119746
Workflow Engine
  • Update results for detectors to use the DetectorEvaluation class by @saponifi3d in #119998
  • Remove resolution rollout option usage by @leeandher in #120247
  • Update the workflow_engine/evaluations for Detector / Workflow Evals by @saponifi3d in #119967
  • Refactor ProcessedDataConditionGroup as DataConditionGroupEvaluation by @saponifi3d in #119434
Other
  • (acceptance) Cover SCM project creation flow by @jaydgoss in #120364
  • (action_log) More efficient new GroupActionLogEntry entry querying by @kcons in #119879
  • (activity) Rename set_resolved module to status_change by @leeandher in #119847
  • (activity-alerts) Remove _id params from notification data by @leeandher in #119553
  • (apigw) Disable static files serving by @gi0baro in #120340
  • (auth) Index case-insensitive user lookups by @lcian in #119901
  • (autofix) Refine overview section layout by @NicoHinderling in #120417
  • (billing-platform) Bump sentry-protos 0.45.1 by @brendanhsentry in #119927
  • (chat) Adopt MessageRow primitive and add density in AI chat blocks by @priscilawebdev in #120427
  • (codeowners) Assign ai_monitoring to telemetry-experience by @vgrozdanic in #120312
  • (derived) Move framework-only tests into their own file by @kcons in #120277
  • (devenv) Split sentry-specific taskbroker back out from the generic one by @untitaker in #119898
  • (difs) Use simple Objectstore put under 128 MiB by @lcian in #120311
  • (external-mcp) Rename datadog integration by @wedamija in #120137
  • (github) Always enable webhook mailbox bucketing by @joseph-sentry in #119948
  • (issue-workflow) Remove option registration by @leeandher in #120248
  • (jest) Mock root ECharts imports by @scttcper in #120049
  • (llm-proxy) Remove unused JWT minting endpoint by @sehr-m in #119875
  • (metrics) Add a metric for legacy debug file reads by @jan-auer in #120446
  • (mypy) Ignore transient mypy worker files by @leeandher in #119765
  • (native) Remove compatibility code by @jjbayer in #119822
  • (objectstore) Use JWT auth for presigned download URLs by @lcian in #119814
  • (pr-metrics) Gate the activity document on an org feature flag by @vaind in #120071
  • (preprod) Extract shared size evaluation core by @mtopo27 in #119428
  • (project-creation) Replace SCM experiment gate by @jaydgoss in #120351
  • (refactor-tasks) Drop repo.yaml, update README, add scan workflow by @ryan953 in #119864
  • (release-health) Pre-cache organization in _handle_release_adoption by @shellmayr in #120174
  • (replays) Uncomment archived replay test by @mjq in #119309
  • (scm) Upgrade sentry-scm to 1.1.0 by @sentry-junior in #119908
  • (seer-activity) Remove the lonely button by @leeandher in #119762
  • (seer-alerts) Remove *_started options (again) by @leeandher in #120369
  • (seer-infra-telemetry) Set up temporary code to provide Seer with GCP integration internally… by @shashjar in #120106
  • (seerExplorerHeader) Switch to built-in container queries by @TkDodo in #120338
  • (sentry apps) Silence inner value error but retry by @Christinarlong in #120280
  • (slack) Increase nudge frequency to 30% and remove weekly limit by @alexsohn1126 in #119926
  • (span-buffer) Reduce Lua memory allocation pressure and function call overhead by @cmanallen in #119542
  • (tests) Add types to most {}-typed fixture params by @JoshuaKGoldberg in #119912
  • (trace) Add feature flag for new trace view version banner by @mjq in #120460
  • (trace-items) Always store metric context at org level by @DominikB2014 in #119757
  • (tracemetrics) Remove equation label const function call by @narsaynorath in #120399
  • (traces) Migrate trace header and vitals media queries to container queries by @priscilawebdev in #120315
  • (txn-summary) Move event view creation to point of use by @mjq in #119676
  • (waterfall) Improve streamed span detection logic by @Lms24 in #119602
  • Bump sentry-protos 0.50.1 by @brendanhsentry in #120497
  • Remove member limit forced trial and modals by @noahsmartin in #120457
  • Remove slack forced trial by @noahsmartin in #120423
  • Bump protos by @noahsmartin in #120396
  • Bump sentry-protos 0.49.0 by @brendanhsentry in #120377
  • Remove now-unused organizations:explore-modal-export feature flag by @JoshuaKGoldberg in #120140
  • Move noUnresolvedIssues to scraps primitives by @TkDodo in #120339
  • Remove unused Seer RPC record_pr_attribution function by @giovanni-guidini in #120058
  • Remove fly.io modal by @noahsmartin in #120162
  • Bump sentry-scm to 1.2.0 by @getsentry-bot in #120070
  • Improve efficiency of username_is_available logic by @markstory in #119964
  • Exclude API URL codegen from frontend/backend warning by @jamieQ in #118795
  • Bump sentry-sdk[http2] to 2.66.0 by @cleptric in #119820
  • Bump sentry-kafka-schemas to 2.2.0 by @getsentry-bot in #119763
  • Bump new development version by @sentry-release-bot[bot] in 99d5faf7
Other
  • Ensure SAML assertions called with valid fields by @michelletran-sentry in #120467
  • Added: Tokens 'container' in 'size.tsx' by @Jesse-Box in #120069
  • deps(api-docs): Replace js-yaml with yaml by @scttcper in #120107
  • deps(ui): Remove webpack dependency by @scttcper in #120095
  • deps(ui): Upgrade Sentry Jest environment to v7 by @scttcper in #120083
  • ref(outbox) Move user outboxes to async by @markstory in #119018
  • fix(relocation) Avoid integrity errors on self-hosted import pt2 by @markstory in #119859
  • chore(relocation) Capture errors during relocations by @markstory in #119832
  • deps(ui): Upgrade jest-fetch-mock to 4.2.0 by @scttcper in #119799
  • Enhance SplitPanel documentation with usage guidelines by @ChrisandraVaz in #119555
  • debug(code-review): add sentry-org webhook handler instrumentation by @joseph-sentry in #119781
  • Add issue status reconciliation on group details view by @ceorourke in #119769
View original

Upgraded? How did it go?

Discussion