megachangelog
Announcement26.8.0

Version 26.8.0 Release

Sentry 26.8.0 introduces numerous features and improvements across multiple product areas including enhanced alert configuration with every_event conditions, agent monitoring UI improvements with interactive JSON rendering and timeline enhancements, expanded API response schemas, Autofix steering and checkpoint improvements, and broader platform enhancements for conversations, dashboards, dynamic sampling, and data exploration.

New Features ✨

Aci

Action Log

Agent Monitoring

Ai Monitoring

Api

Assisted Query

  • Forward flag options from the search-agent start endpoint by @aliu39 in #121884
  • Forward feature flags to Seer as request options by @aliu39 in #121784

Attachments

  • Redirect Objectstore-backed attachment downloads to Objectstore by @jan-auer in #120958
  • Store the filename with Objectstore attachment uploads by @jan-auer in #120964

Auth

Autofix

Conversations

Dashboards

Data Browsing

Difs

Dynamic Sampling

Explore

Feedback

Gal

  • Enroll eligible projects for backfill by @yuvmen in #121780
  • Add coordinator task for full backfill across all projects by @yuvmen in #119863

Gdd

  • When invalidating, ensure an invalidated GDD row exists by @kcons in #121398
  • Report incremental derived data processing latency by @kcons in #121030

Hybridcloud

  • Tag webhook delivery time with the mailbox event type by @vaind in #122026
  • Tag delivery outcomes and latency with their dispatcher and mode by @vaind in #121982
  • Attribute drain dispatches to push trigger vs scheduler by @vaind in #121882
  • Tag webhook delivery time by provider by @vaind in #121636
  • Tag webhook delivery metrics by provider by @vaind in #121609
  • Tag webhook backlog depth by event type by @vaind in #121601
  • Emit webhook mailbox depth and oldest-pending-age metrics by @vaind in #121506

Inbound Filters

Inbox

Investigations

Issue Inbox

Issue Progress

Issues

Onboarding

Pr Metrics

Preprod

Replays

Scraps

Search

Seer

Seer Billing

  • Remove OrganizationContributors integration id column by @srest2021 in #121011
  • Mark OrganizationContributors integration id as pending deletion by @srest2021 in #120980

Seerexplorer

  • Deep-link telemetry_live_search call rows by @sentry-junior in #122017
  • Surface residual Explore links and span deep-links by @sentry-junior in #121997
  • Report page location and timezone-aware send times by @azulus in #121758

Slack

Smart Assignment

Workflow Engine

Other

Bug Fixes 🐛

Admin

  • Hide enterprise trial for non-free plans by @ndmanvar in #121783
  • Change help text to specify that it will enable business and not impa… by @ndmanvar in #121662

Agent Monitoring

Alerts

  • Send release environment name, not id, and update API docs by @hobzcalvin in #122074
  • Serialize targetless workflow actions by @cvxluo in #121986
  • Don't use legacy Rule name in issue alert notifs by @leeandher in #121960
  • Format failure rate notifications by @sentry-junior in #119878

Autofix

Charts

Coding Conventions

  • Address no-capitalized-function-calls in viewHierarchy utils by @sentry in #121921
  • Rename capitalized 'Legend' function to 'legend' by @sentry in #121928
  • Rename Tree.FromAssertion to Tree.fromAssertion by @sentry in #121920
  • Rename ToolBox to getToolBox in charts components by @sentry in #121926
  • Refactor InlineEventAttachment for React Compiler by @sentry in #120032
  • Resolve static-component-definitions in SentryApplicationDetails by @sentry in #121127
  • Wrap open/closeDropdown with useCallback by @sentry in #121125
  • Resolve valid-use-memo in searchBar.tsx by @sentry in #121090

Conversations

Dashboards

Derived Data

  • More frequent periodic healing by @kcons in #122009
  • Modernize the behavior of invalidate_group_derived_data by @kcons in #121205

Discover

Dynamic Sampling

Eap

Explore

Forms

Frontend

  • Allow project creation without team-roles by @sentry-junior in #121797
  • Correct useMemo dependencies in CategoricalSeriesWidget by @sentry in #121092

Gal

Gdd

  • Require that aggregator scope is a superset of their feature dependencies by @kcons in #121499
  • More efficient heal_stale_derived_data by @kcons in #121346
  • Use generate_project_derived_data in backfill by @kcons in #121392

Hybridcloud

  • Size the lease drain lock against a single delivery by @vaind in #121843
  • Dispatch push-triggered drains via batch claims by @vaind in #121221
  • Stop counting rejected webhooks as successful deliveries by @vaind in #121606
  • Skip the backlog estimate gauge instead of emitting zero by @vaind in #121521

Inbox

Insights

  • Make web vitals drawer body the scroll container by @sentry-junior in #121852
  • Fix valid-use-memo in TransactionNameSearchBar by @sentry in #121218

Integrations

Issue Details

Issue Detection

  • Handle NoneType request in query injection detector by @sentry in #121512
  • Handle NoneType for event.request in SQLInjectionDetector by @sentry in #121323

Issue Preview

Issue Stream

Issues

Jira

Migrations

Monitors

Notifications

  • Guard against missing removeEventListener on PermissionStatus by @sentry in #121513
  • Add partial index for notificationmessage where parent IS NULL by @hobzcalvin in #121815
  • Use per-project emails on workflow notifications by @leeandher in #121349
  • Build valid release email URLs by @sentry-junior in #121114

Objectstore

  • Close the upstream response when a proxied download is abandoned by @jan-auer in #121714
  • Correct upload and response timeout handling by @lcian in #121149

Onboarding

Ourlogs

Performance

Pr Metrics

  • Group check rollups per suite, not per app by @vaind in #121664
  • Sweep activity of PRs that never earn attribution by @vaind in #121424

Preprod

Pure Render Functions

Refactor Tasks

Releases

  • Attribute release-resolved issues in the group action log by @cvxluo in #121356
  • Stop using discover dataset for release comparison by @mjq in #120975

Replays

Scraps

Search

Seer

Sentry Apps

Settings

Slack

Spans Migration

Tests

  • Keep EAP snuba tests within 30d full-fidelity window by @phacops in #121693
  • Keep EAP snuba tests within 30d statsPeriod by @sentry-junior in #121595
  • Fix inbox test flaking in CI by @malwilley in #121565

Trace

Trace View

Tracemetrics

Ui

Other

  • (accountSecurity) Adhere to valid-use-memo convention by @sentry in #121217
  • (aci) Allow adding triggers to an alert with triggers: null by @RudraPatel2003 in #121622
  • (action_log) Codify that pipeline_hash=NULL means invalidated by @kcons in #121273
  • (ai-monitoring) Stop title generation from joining AI conversations by @vgrozdanic in #120793
  • (api) Return X-Max-Hits header from OffsetPaginator by @malwilley in #122044
  • (arithmetic-builder) Align function tokens vertically by @nsdeschenes in #121705
  • (ask-seer) Use grammar-neutral Ask Seer fallback labels by @nsdeschenes in #121441
  • (auth) Validate org and provider in pipeline state by @michelletran-sentry in #121528
  • (auto_ongoing) Don't tag metric with count by @kcons in #121687
  • (billing) Clarify promo code redemption layout by @sentry-junior in #119526
  • (button) Keep the chonky silhouette visible under the focus ring by @cvxluo in #120219
  • (ci) Add timeouts to snuba test endpoint requests by @mchen-sentry in #121579
  • (clipboard) Prevent unhandled promise rejection from NotAllowedError by @sentry in #121032
  • (cmdk) Do not create a queryObserver for disabled resources by @TkDodo in #120963
  • (code-mappings) Decode path mapping url before validation by @Lms24 in #121593
  • (codeowners) Ignore stale organization_integration_id input by @scttcper in #120977
  • (contexts) Show <redacted> instead of "null" for scrubbed user context fields by @shashjar in #120930
  • (conventions) Update sentry-conventions package to 0.19.0 by @mjq in #121641
  • (crons) Generate unique slugs for duplicate monitor names by @mrduncan in #121456
  • (deps) Bump seroval to patch critical deserialization vuln by @oioki in #121304
  • (drawers) Move scrollbars to the right by @sentry-junior in #121860
  • (eapMetricsField) Correct valid-use-memo for debounced setSearch by @sentry in #121215
  • (errors) Transactions homepage showed broken state by @nikkikapadia in #121228
  • (events-screenshot) Stabilize AttachmentComponent reference by @sentry in #120036
  • (eventstream) Safely roll out FutureTrackingProducer by @lvthanh03 in #121671
  • (feedback) Avoid mutating event context data by @scttcper in #120716
  • (filters) Use renamed markLine export in custom filters by @sentry-junior in #121967
  • (group_notes) Use the activity flag rather than the write flag by @kcons in #121202
  • (grouping) Bound lookaheads in parameterization regexes by @oioki in #121470
  • (inbound_email) Provide ActionContext for issue notes by @sentry in #120880
  • (inbound-filters) Customer filter table columns by @shellmayr in #121711
  • (issue) Fix bulk lookup for group events by @saponifi3d in #120834
  • (issue detection) Handle URL placeholders more gracefully by @lobsterkatie in #121875
  • (issue-inbox) Show Identified issues when suggested as owner by @sentry in #121561
  • (issue-progress) Heal null has_other_open_prs in PR lifecycle backfill by @malwilley in #120947
  • (issue-views) Give Stars column enough width for its header by @sentry-junior in #121750
  • (java) Deobfuscate bare class names in cast exception messages by @tedjuntunen-sentry in #121781
  • (jira-server) Scope webhook integration lookup to the provider by @vaind in #121280
  • (keyStats) Adhere to pure-render-functions convention by @sentry in #121237
  • (lint) Wrap useMemo function reference in detectSection.tsx by @sentry in #121212
  • (metrics) Switch project details off of metricsEnhanced by @k-fish in #120777
  • (metricsVisualize) Refactor useCallback to useMemo for debounced function by @sentry in #121124
  • (navBillingStatus) Prevent TypeError when localStorage is null by @sentry in #121704
  • (ongoing) Remove redundant subqueries by @kcons in #121660
  • (orgs) Allow members to create projects by default by @sentry-junior in #121727
  • (outcomes) Add quantity to outcomes metric by @untitaker in #121288
  • (perforce) Add support for p4 broker by @mujacica in #120824
  • (profiling) Cap span query limit to API max of 100 by @romtsn in #119924
  • (query agent) Expand always allow list to include context fields by @shruthilayaj in #121977
  • (react-compiler) Rename TraceTree.Depth to TraceTree.depth by @sentry in #121925
  • (react-hooks) Fix impure Date.now() call in useCommandPaletteAnalytics by @sentry in #121244
  • (release) Use spans dataset for transaction table by @mjq in #121563
  • (sampling) Update warning by @wmak in #120846
  • (scm) Make PR lifecycle writes monotonic across reordered webhooks by @vaind in #121059
  • (security) Fix a possible security issue on the workflow_engine api by @saponifi3d in #120941
  • (seer-settings) Fix agent handoff dropdown selection not persisting by @srest2021 in #120820
  • (seerExplorer) Handle localStorage access in Safari private mode by @sentry in #121031
  • (seerWorkflows) Fix pure-render-functions in index.tsx by @sentry in #121238
  • (service-worker) Prevent TypeError from undefined registration by @sentry in #120863
  • (stacktrace) Use single select for View and Sort in display options by @TkDodo in #121160
  • (tabs) Defer ResizeObserver recompute to prevent useEffectEvent error by @sentry in #120862
  • (traces) Replace count(span.duration) with count(spans) in explore equations by @narsaynorath in #121634
  • (workflow) Remove noisy DetectorGroup.DoesNotExist log by @sentry in #121024
  • (workflow_engine) Attribute test-fired actions in the group action log by @cvxluo in #121373
  • (workflows) Validate Sentry App action targets by @cvxluo in #121996
  • Reject source files greater than 190 MiB by @elramen in #121718
  • Make updateSlackAlert responsive towards its container by @TkDodo in #121316
  • Wrap integration issue-linking and workflow trigger_action in action_context_scope by @sentry in #120873
  • Only hide issueList actions on narrow viewPorts, not containers by @TkDodo in #120833

Documentation 📚

Internal Changes 🔧

Aci

Agent Monitoring

Agents

Ai Monitoring

Alerts

Api

Auth

Autofix

Codeowners

Control

  • Drop check_run/check_suite completed with no pull request in their own repo by @vaind in #121719
  • Drop unconsumed check_suite webhook actions at the parser by @vaind in #121434

Conversations

Dashboards

Deps

Detectors

Discover

Dynamic Sampling

Eslint

Event Formatter

Explore

Forms

Gdd

  • Restructure transactions around _ensure_derived by @kcons in #121581
  • Factor out basic group batching and processing methods by @kcons in #121266

Grouping

Hybridcloud

  • Remove dead member teams replication option by @ldelvoye in #121878
  • Fold the dispatch due-check into the claim update by @vaind in #121454
  • Log webhook discards at warning and stop sampling their counters by @vaind in #121604
  • Read webhook payloads from primary in control tasks by @beezz in #121514
  • Drop unused priority index on WebhookPayload by @vaind in #121283
  • Remove the async api gateway by @ldelvoye in #121229
  • Drop unused schedule_for index on WebhookPayload by @vaind in #121260

Inbox

Integrations

Issues

Logs

Migrations

Notifications

  • Restructure get_parent_notification_message query to hit index better by @kcons in #121980
  • Seer activity alerts link to issue inbox if available by @leeandher in #121764

Onboarding

Organizations

Performance

Pr Metrics

  • Register permanent organizations:pr-metrics flag by @vaind in #121936
  • Promote the PR lifecycle mappers out of the webhooks by @cvxluo in #121009

Preprod

Profiling

Project Install

  • Extract channel query options by @sentry-junior in #121377
  • Stabilize notification refetch tests by @scttcper in #121389

Relay

  • Reduce lock contention on Relay usage by @Dav1dde in #121987
  • Separate reprocessing tasks from issues tasks by @Dav1dde in #121841
  • Separate project config invalidations from computations by @Dav1dde in #121836
  • Remove relay.invalidation-direct-outside-atomic option check by @shellmayr in #121281
  • Remove metric extraction code used to generate rules for the project config by @Dav1dde in #121324
  • Add drop-transaction-metrics2 to drop metric extraction configs by @Dav1dde in #121045

Replays

Scm

Scm Multi Platform Detection

Scraps

Seer

  • Remove dead use_agent_sandbox option by @chromy in #122028
  • Remove organizations:seer-explorer-ui-tools by @cvxluo in #121041
  • Skip check-suite pull requests not based in the suite's repo by @vaind in #121724
  • Add tests for ProjectRepository fallback in free cohort orgs by @Mihir-Mavalankar in #121742
  • Restore Seer automation in post-process by @skonves in #121486
  • Add viewer_context_scope to post_process_group by @sehr-m in #121545
  • Render Code Mode calls instead of the generic tool row by @azulus in #121582
  • Add viewer_context_scope to ingest and explorer_index paths by @sehr-m in #121467
  • Remove issue summary from post process temp by @cvxluo in #121426
  • Instrument _resolve_viewer_context for SeerViewerContext retirement by @sehr-m in #121270
  • Remove Langfuse URL plumbing from Seer Explorer by @aliu39 in #121186
  • Remove obsolete issue and event details RPC by @isaacwang-sentry in #121080
  • Require the PR fields on a coding-agent result by @cvxluo in #121102
  • Remove legacy PR-created attribution/linking from process_autofix_updates (CW-1719 phase 2) by @vaind in #120584

Slack

Spans

Tables

Taskworker

Trace

Traces

Ui

Weekly Report

Weekly Reports

Workflow Engine

Other

Other

Plus 1 more

alertsagent-monitoringapiautofixconversationsui

Source: original entry ↗